Skip to content

GitLife proves version control can be as chaotic and unpredictable as your life! We’re here to turn your life decisions into a version control system. Because who doesn’t want to commit their choices like they’re pushing code?

Notifications You must be signed in to change notification settings

soorajdmg/GitLife

Repository files navigation

🌍 GitLife - Version Control System for your Life Decisions.

gitlifeVideoGIF


Welcome to GitLife, the app that proves version control can be as chaotic and unpredictable as your life! Forget the boring Git tutorials; we’re here to turn your life decisions into a version control system. Because who doesn’t want to commit their choices like they’re pushing code?

🚀 Table of Contents

📖 Introduction

Welcome to GitLife! Here, you can interact with your life decisions just like you would with your Git repositories—without needing to understand anything about Git! Commit your choices, create new branches for those “what if” scenarios, and visualize your life timeline as a graph. It's like living your life with a commit history, because who needs spontaneity?

🌟 Features

  • Multi-User Support: Create your own account and keep your existential crises private!
  • Secure Authentication: JWT-based login system—because your life decisions deserve encryption.
  • Decision Commits: Turn every life choice into a commit—because it's easier to track regrets this way!
  • Branch Out: Create branches for alternative paths in life, so you can wonder "what if?" without any real commitment.
  • Graphical Timeline: Visualize your life as a graph, showing your ups, downs, and existential crises.
  • Impact Tracking: Measure the impact of your decisions with a fancy slider (1-100).
  • Mood Logging: Track your emotional state with emojis—because words are overrated.
  • Private Data: Each user's data is completely isolated—no one else needs to see your chaos.
  • User-Friendly Interface: Enjoy navigating through choices with an interface that may or may not make sense.
  • Community Shenanigans: Join others who are just as lost as you are, sharing the joys of turning life into code.

🛠 Installation

Ready to embark on this emotional rollercoaster? Here's how to get started:

Prerequisites

  • Node.js (v16 or higher)
  • MongoDB (local installation or MongoDB Atlas account)

Quick Start

  1. Clone the repository:

    git clone https://github.com/soorajdmg/GitLife
    cd GitLife
  2. Install dependencies:

    # Install frontend dependencies
    npm install
    
    # Install backend dependencies
    cd server
    npm install
    cd ..
  3. Set up environment variables:

    Create .env file in root directory:

    VITE_API_URL=http://localhost:5000/api
    

    Create server/.env file:

    MONGODB_URI=mongodb://localhost:27017/gitlife
    PORT=5000
    JWT_SECRET=your-super-secret-jwt-key-change-this-in-production
    
  4. Start MongoDB:

    # On macOS (if installed via homebrew)
    brew services start mongodb-community
    
    # On Windows/Linux
    mongod
  5. Run the application:

    Terminal 1 - Start backend:

    cd server
    npm start

    Terminal 2 - Start frontend:

    npm run dev
  6. Open the app:

    • Visit http://localhost:5173
    • Create an account and start tracking your life decisions!
    • If things go wrong, just remember: it's not you; it's the universe.

Tech Stack

  • Frontend: React + Vite + Tailwind CSS
  • Backend: Express.js + MongoDB
  • Authentication: JWT tokens
  • Database: MongoDB

📚 For detailed setup and migration information, see:

🎮 Usage

Navigate through the app and commit your life decisions with a sense of thrill and potential disaster! Keep your life “alive” while enjoying the weirdness of this experience.

🤝 Contributing

We welcome your contributions, even if they are as chaotic as this project itself. Here’s how to get involved:

  1. Fork the Project.
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature).
  3. Commit your Changes (git commit -m 'Add some AmazingFeature').
  4. Push to the Branch (git push origin feature/AmazingFeature).
  5. Open a Pull Request and try not to laugh too hard at your genius!

📬 Contact

Got questions, funny life stories, or want to share your version control mishaps? Reach out to me:


⭐️ If you enjoy this wonderfully chaotic experience, please give it a star! It might not fix your life, but it will definitely bring a smile.

gitLifeVideocomp.mp4

image

image

image

image

image

image

About

GitLife proves version control can be as chaotic and unpredictable as your life! We’re here to turn your life decisions into a version control system. Because who doesn’t want to commit their choices like they’re pushing code?

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published