- Frontend: todotrack-buildwithsonu.vercel.app
- Backend API: todotrack-backend.onrender.com
A full-stack MERN application designed for clean, fast, and focused task management.
- ✅ User Authentication: Secure signup and login with JWT and cookies.
- ✅ Todo Management: Full CRUD (Create, Read, Update, Delete) functionality for tasks.
- ✅ Status & Priority: Organize tasks with clear statuses (
Not Started,In Progress,Completed) and priorities (High,Medium,Low). - ✅ Interactive Dashboard: View key statistics and manage all your todos in one place.
- ✅ Dynamic Filtering: Instantly filter tasks by both status and priority.
- ✅ Profile Management: Users can change their password and delete their account.
- ✅ Light & Dark Mode: A sleek, theme-aware interface for user comfort.
- ✅ Fully Responsive: A seamless experience on desktop, tablet, and mobile devices.
| Category | Technologies & Libraries |
|---|---|
| Frontend | React.js, Vite, Tailwind CSS, React Router, Lucide Icons |
| Backend | Node.js, Express.js, MongoDB, Mongoose, JWT |
| Dev Tools | ESLint, Prettier, Nodemon, Concurrently |
Follow these instructions to get the project up and running on your local machine.
git clone https://github.com/peddintisonu/TodoTrack.git
cd todotrackThis single command will install dependencies for the root, backend, and frontend workspaces.
npm run install:allYou need to create environment files for both the backend and the frontend.
For the Backend:
- Navigate to the
backenddirectory. - Create a new file named
.env.development. - Copy the contents from
.env.exampleand fill in your own values.
# backend/.env.development
PORT=8000
NODE_ENV=DEVELOPMENT
JWT_SECRET=your_super_secret_key_here
MONGO_URI=your_mongodb_connection_string
MONGO_DB_NAME=TodoTrackDB
CLIENT_URL=http://localhost:5173For the Frontend:
- Navigate to the
frontenddirectory. - Create a new file named
.env.development. - Copy the contents from
.env.exampleand set the API URL.
# frontend/.env.development
VITE_API_BASE_URL=http://localhost:8000/api/v1
VITE_APP_NAME=TodoTrackNavigate back to the root directory of the project and run the following command to start both the frontend and backend development servers concurrently:
npm run dev- The frontend will be available at
http://localhost:5173. - The backend API will be available at
http://localhost:8000.
This application is configured for separate deployments.
- Frontend: Deploy to static hosting services like Vercel or Netlify. Remember to set the
VITE_API_BASE_URLenvironment variable to your deployed backend's URL. - Backend: Deploy to services like Render or Heroku. Remember to set the
CLIENT_URLenvironment variable to your deployed frontend's URL to enable CORS.