A comprehensive full-stack application for tracking your learning journey in DSA (Data Structures and Algorithms), System Design, and DevOps. Built with the MERN stack (MongoDB, Express.js, React, Node.js).
- Frontend: https://bodhi-track.vercel.app
- Backend API: https://bodhi-track-api.vercel.app
- Real-time progress tracking across all learning paths
- Weekly targets and achievements visualization
- Recent activity feed
- Dark/Light mode support
- Track problems by difficulty (Easy, Medium, Hard)
- Categorize by data structures and algorithms
- Mark problems as Complete, In Progress, or Todo
- Add personal notes and solutions
- Track completion statistics
- Organize system design topics
- Track learning progress
- Store resources and notes
- Practice case studies
- Structured learning modules
- Hands-on task tracking
- Resource management
- Progress monitoring
- React 18
- Tailwind CSS
- Chart.js
- Axios
- Context API
- JWT Authentication
- Node.js
- Express.js
- MongoDB
- Mongoose
- JWT
- bcrypt
bodhi-track/
├── client/ # Frontend React application
│ ├── public/ # Public assets
│ ├── src/ # Source files
│ │ ├── components/ # Reusable components
│ │ ├── pages/ # Page components
│ │ ├── context/ # Context providers
│ │ ├── utils/ # Utility functions
│ │ └── styles/ # CSS styles
│ └── package.json # Frontend dependencies
│
├── server/ # Backend Node.js/Express application
│ ├── controllers/ # Route controllers
│ ├── models/ # Mongoose models
│ ├── routes/ # API routes
│ ├── middleware/ # Custom middleware
│ ├── utils/ # Utility functions
│ └── package.json # Backend dependencies
│
└── README.md # Project documentation
-
Clone the repository
git clone https://github.com/yourusername/bodhi-track.git cd bodhi-track -
Install Dependencies
# Install backend dependencies cd server npm install # Install frontend dependencies cd ../client npm install
-
Environment Setup
Backend (.env in server folder):
PORT=5000 MONGODB_URI=mongodb://localhost:27017/bodhi-track JWT_SECRET=your_jwt_secret_key_here JWT_EXPIRE=24h NODE_ENV=development
Frontend (.env in client folder):
REACT_APP_API_URL=http://localhost:5000
-
Start Development Servers
Backend:
cd server npm run devFrontend:
cd client npm start
- Push your code to GitHub
- Connect your repository to Vercel
- Configure build settings:
- Build Command:
npm run build - Output Directory:
build
- Build Command:
- Add environment variables in Vercel dashboard
- Create vercel.json in server directory:
{ "version": 2, "builds": [{"src": "server.js", "use": "@vercel/node"}], "routes": [{"src": "/(.*)", "dest": "server.js"}] } - Deploy using Vercel CLI:
vercel
-
Register/Login
- Create an account or login
- Set your learning preferences
-
Dashboard
- View overall progress
- Check weekly targets
- See recent activities
-
DSA Section
- Add problems
- Track progress
- Add notes and solutions
-
System Design
- Organize topics
- Track learning progress
- Store resources
-
DevOps
- Follow structured modules
- Track task completion
- Manage resources
# Run frontend tests
cd client
npm test
# Run backend tests
cd server
npm testDetailed API documentation is available at:
- Development: http://localhost:5000/api-docs
- Production: https://bodhi-track-api.vercel.app/api-docs
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- Developer - Your Name
For support, email support@bodhitrack.com or join our Discord channel.
