StreakTracker is a web application designed to help users build and maintain daily habits by tracking custom streaks and managing daily tasks. By visualizing progress and promoting consistency, it serves as a motivational tool for individuals aiming to stay on track with their goals.
👉 Live App
- ✅ Custom Streak Creation: Define and monitor personalized habits.
- 📋 Daily Task Management: Add, edit, and delete daily tasks to stay organized.
- 📈 Progress Visualization: View streaks and task completion history to assess consistency.
- 🧭 User-Friendly Interface: Navigate effortlessly through an intuitive design.
- 📱 Responsive Design: Works great on mobile, tablet, and desktop devices.
- Frontend: Next.js ⚛️, TypeScript 🟦, Tailwind CSS 🎨
- Backend: Node.js 🌐, Express 🚂
- Database: MongoDB 🍃
- Deployment: Vercel ▲, Render⚡
📸 Add your screenshots in this section under the
client/public/assets
folder or wherever they are hosted.
StreakTracker/
├── client/ # Frontend source code
│ ├── public/ # Static assets
│ └── src/ # React components and pages
├── server/ # Backend source code
│ ├── controllers/ # Route handlers
│ ├── models/ # Mongoose schemas
│ └── routes/ # API endpoints
├── .gitignore
├── package.json
└── README.md
- Node.js and npm
- MongoDB instance (local or cloud)
-
Clone the Repository
git clone https://github.com/kaushik-kadari/StreakTracker.git cd StreakTracker
-
Backend Setup
cd server npm install
➕ Create a
.env
file in theserver
folder:MONGODB_URI=your_mongodb_connection_string JWT_SECRET=your_jwt_secret PORT=5000
-
Frontend Setup
cd ../client npm install
➕ Create a
.env
file in theclient
folder:NEXT_PUBLIC_API_URL=your_backend_url
-
Run the App
-
Start Backend:
cd ../server npm start
-
Start Frontend:
cd ../client npm run dev
-
Open
http://localhost:3000
in your browser
-
- 👥 Social features for following and comparing progress with friends
- 📆 Habit scheduling and calendar view
- 🎉 Customizable streak milestones and rewards
- 🚫 Streak freezing and temporary pause feature
- 📈 Advanced analytics with insights and recommendations for improving streaks
Contributions are welcome and appreciated! 🙌
- Fork the repo
- Create a new branch (
git checkout -b feature/AmazingFeature
) - Commit your changes (
git commit -m 'Add AmazingFeature'
) - Push to the branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
Thanks for checking out StreakTracker! Feel free to ⭐ the repo if you find it helpful and share your feedback to make it even better!