Flowdex is an innovative, gamified study and productivity platform designed to help students and professionals focus better, track their study sessions, and achieve their goals through an engaging, sleek interface.
Developed by Pratyush.
- 🍅 Gamified Pomodoro Timer: Keep track of your focus sessions with built-in pause, resume, and refresh capabilities. Complete sessions to earn XP and level up!
- 📈 Advanced Stats & Analytics: Visualize your study history with dynamic 7-day activity graphs. Track "Total Focus", "Today's Focus", and progress across different sessions.
- ☁️ Real-Time Sync: Fully integrated with Firebase Realtime Database to ensure your focus time, XP, and levels are instantly saved and synchronized across devices.
- 👥 Focus Rooms: Dedicated spaces designed to minimize distractions and help you get into the "flow" state.
- 🎨 Stunning UI/UX: Built with a modern, glassmorphic dark-theme design featuring smooth micro-animations using Framer Motion and Tailwind CSS.
- 🤖 AI Integration Backend: Supported by a fast and reliable FastAPI backend for advanced features.
- React & Vite
- Tailwind CSS (for rapid, modern styling)
- Framer Motion (for dynamic and fluid animations)
- React Router (for seamless navigation)
- Lucide React (for beautiful iconography)
- Firebase (Authentication & Realtime Database)
- FastAPI (Python backend for robust API endpoints)
Follow these steps to set up the project locally on your machine.
- Node.js (v18+ recommended)
- Python 3.9+ (for the backend)
- A Firebase account and project set up.
git clone https://github.com/your-username/Flowdex.git
cd FlowdexNavigate to the frontend directory, install dependencies, and start the development server:
cd frontend
npm install
npm run devNote: Ensure you have your Firebase configuration set up properly.
Navigate to the backend directory, install Python dependencies, and run the FastAPI server:
cd ../backend
pip install -r requirements.txt
uvicorn main:app --reload
Pratyush
Feel free to reach out, open issues, or submit pull requests if you'd like to contribute!