Skip to content

๐ŸŽฏ About StudyFlow StudyFlow is a full-stack productivity and study-management application designed to help students and self-learners stay focused, track progress, and build consistent study habits. It combines the Pomodoro technique, real-time analytics, task & subject management, and immersive focus music into a single modern experience.

Notifications You must be signed in to change notification settings

salahuddingfx/Study-Flow

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

27 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

StudyFlow Hero Banner

A modern full-stack study & productivity application
Designed for deep focus, clarity, and consistent growth.


๐Ÿš€ StudyFlow โ€” Intelligent Productivity Ecosystem

Typing Animation

๐Ÿ”ด Live Demo โ€ข ๐Ÿ› Report Bug โ€ข โœจ Request Feature

## ๐ŸŽฏ About StudyFlow

StudyFlow is a full-stack productivity and study-management application designed to help students and self-learners stay focused, track progress, and build consistent study habits.

It combines the Pomodoro technique, real-time analytics, task & subject management, and immersive focus music into a single modern experience.


โœจ Key Features

  • โฑ๏ธ Smart Pomodoro Timer
    Fully customizable focus & break sessions

  • ๐Ÿ“Š Deep Analytics Dashboard
    Daily, weekly & monthly productivity insights

  • ๐ŸŽต Integrated Music Player
    YouTube links & local audio support

  • ๐Ÿ“ Workflow Manager
    Tasks, subjects & goal tracking

  • ๐Ÿ” Secure Authentication
    JWT + Bcrypt encryption

  • โšก Real-time Sync
    Live updates via Socket.IO

  • ๐ŸŽจ Modern UI/UX
    Responsive, dark-friendly interface

  • ๐Ÿ“ฑ Cross-Device Ready
    Works on desktop & mobile

  • ๐Ÿ† Gamified Achievements
    Unlock rewards for study milestones


๐Ÿ† Achievement System

StudyFlow includes a gamified achievement system to motivate consistent study habits. Earn points and unlock badges by reaching study milestones:

๐Ÿ“š Study Time Achievements

  • First Steps: Complete 1 study session (10 points)
  • Hour Master: Study for 1 hour total (15 points)
  • Dedicated Scholar: Study for 10 hours total (50 points)
  • Study Warrior: Study for 50 hours total (150 points)

๐Ÿ”ฅ Consistency Achievements

  • Consistency King: Maintain a 7-day study streak (75 points)
  • Perfect Week: Study every day for a week (100 points)

๐ŸŽฏ Goal & Task Achievements

  • Goal Crusher: Complete 1 goal (20 points)
  • Goal Master: Complete 10 goals (100 points)
  • Subject Explorer: Create 1 subject (10 points)
  • Task Manager: Complete 1 task (15 points)
  • Task Champion: Complete 50 tasks (80 points)

Note: Achievements are automatically unlocked as you progress. Check your profile to see earned badges!


๐Ÿ› ๏ธ Technology Stack

๐Ÿ–ฅ๏ธ Frontend


โš™๏ธ Backend


๐Ÿ—„๏ธ Database


๐Ÿ“‹ Prerequisites

Before you begin, make sure all the above tools are installed and properly configured.


๐Ÿš€ Installation & Setup

1๏ธโƒฃ Clone the Repository

git clone https://github.com/salahuddingfx/Study-Flow.git
cd Study-Flow

2๏ธโƒฃ Install Dependencies
cd Backend
npm install

3๏ธโƒฃ Environment Configuration

Create a `.env` file in the **Backend** directory:

```env
PORT=5000
MONGO_URI=your_mongodb_connection_string
JWT_SECRET=your_super_secret_key
NODE_ENV=development

# AI Configuration (Unlimited Models Available!)
GEMINI_API_KEY=your_google_gemini_api_key
GEMINI_MODEL=gemini-2.0-flash-exp  # Default: unlimited experimental model

Available AI Models:

  • gemini-2.0-flash-exp - โšก Unlimited (Recommended)
  • gemini-exp-1206 - โšก Unlimited
  • gemma-2-9b-it - Gemma 9B
  • gemma-2-27b-it - Gemma 27B
  • gemini-2.5-flash - โš ๏ธ Rate Limited (5 RPM/20 RPD)

4๏ธโƒฃ Start the Backend Server npm start

5๏ธโƒฃ Run the Frontend

Use VS Code Live Server (recommended)

Backend โ†’ http://localhost:5000

Frontend โ†’ http://127.0.0.1:5500/index.html (Live Server)

Or any static server of your choice.

AI Setup (Gemini)

  • Get a free API key from Google AI Studio
  • Add GEMINI_API_KEY to your Backend .env
  • The app uses unlimited models by default (gemini-2.0-flash-exp) to avoid rate limits
  • Fallback system: Automatically tries multiple models if one fails
  • No rate limits on experimental models! ๐Ÿš€

## ๐Ÿ“ Project Structure

```text
Study Flow/
โ”œโ”€โ”€ Backend/
โ”‚   โ”œโ”€โ”€ config/            # Database & app configuration
โ”‚   โ”œโ”€โ”€ middleware/        # Auth & custom middlewares
โ”‚   โ”œโ”€โ”€ models/            # Mongoose schemas
โ”‚   โ”œโ”€โ”€ routes/            # API routes
โ”‚   โ”œโ”€โ”€ node_modules/
โ”‚   โ”œโ”€โ”€ .env               # Environment variables
โ”‚   โ”œโ”€โ”€ package.json
โ”‚   โ”œโ”€โ”€ package-lock.json
โ”‚   โ”œโ”€โ”€ server.js          # Express server entry point
โ”‚   โ””โ”€โ”€ check-deployment.js
โ”‚
โ”œโ”€โ”€ Frontend/
โ”‚   โ”œโ”€โ”€ Assets/
โ”‚   โ”‚   โ”œโ”€โ”€ script.js      # Frontend logic
โ”‚   โ”‚   โ””โ”€โ”€ style.css     # UI styles
โ”‚   โ””โ”€โ”€ index.html        # Main frontend entry
โ”‚
โ”œโ”€โ”€ .gitignore
โ”œโ”€โ”€ DEPLOYMENT.md
โ”œโ”€โ”€ readme.md
โ””โ”€โ”€ render.yaml

---

## ๐Ÿ”„ Recent Upgrades

### ๐Ÿค– AI System v2.0
- โšก **Unlimited AI Models**: Now using `gemini-2.0-flash-exp` (no rate limits!)
- ๐Ÿ”„ **Smart Fallback**: Auto-tries 9+ models including Gemma 2 series
- ๐Ÿ“Š **Model Tracking**: Response includes which model answered
- ๐ŸŽฏ **Context-Aware**: AI knows your subjects, tasks, goals, and study history
- ๐Ÿ”ง **Health Endpoint**: `/api/ai/health` shows model status

### ๐ŸŽจ UX Improvements
- ๐Ÿ–ฑ๏ธ **Enhanced Custom Cursor**: Works on 17+ interactive element types
- ๐Ÿ“ฑ **Mobile Optimized**: Full-screen menu, no overflow, touch-friendly
- ๐ŸŽญ **Glassmorphism**: Beautiful cursor with hover effects (desktop only)
- ๐Ÿ“ฐ **Blog System**: Default posts with images + modal reader
- ๐Ÿ” **Admin Panel**: Full dashboard with analytics and user management

### ๐Ÿ›ก๏ธ Security & Performance
- ๐Ÿ”’ Sensitive debug logs removed
- ๐Ÿ“ `.env.example` template added
- โšก Compression middleware enabled
- ๐Ÿ›ก๏ธ Helmet.js security headers
- ๐Ÿšฆ Rate limiting configured

---

## ๐Ÿงช Quick Test Checklist

- Login โ†’ Navigate Timer/Analytics โ†’ No horizontal scroll on mobile.
- Open Blog โ†’ Default posts visible โ†’ Click to read modal opens.
- Toggle AI widget โ†’ Ask a question โ†’ Typing indicator and responses flow.
- Admin Panel opens when `isAdmin` is true; charts render.

---

## โš™๏ธ Environment & Running

- Backend: Express on port `5000` (from `.env`).
- Frontend: Open `index.html` via VS Code Live Server.
- AI: `GEMINI_API_KEY` in Backend `.env`.

If you change ports, update `API_BASE_URL` in `Assets/script.js` accordingly.

๐ŸŽฎ Usage Guide

This section explains how to use StudyFlow effectively from the first login to productivity analysis.


๐Ÿš€ First-Time Setup

  1. Create an account or log in securely
  2. Set your study preferences
  3. Add subjects you want to focus on

๐Ÿ“ Task & Subject Management

  • Create subjects (e.g., Math, Programming, Design)
  • Add tasks under each subject
  • Define goals to track your progress
  • Organize your workflow for focused sessions

โฑ๏ธ Focus Sessions (Pomodoro)

  • Choose a focus duration (default: 25 minutes)
  • Select a subject and optional task
  • Start the Pomodoro timer
  • Take short or long breaks when prompted

๐ŸŽต Music & Focus Environment

  • Paste YouTube links for background focus music
  • Upload and play local audio files
  • Control volume and playback without interrupting sessions
  • Create a distraction-free study atmosphere

๐Ÿ“Š Productivity Analytics

  • Track total focus time per day, week, and month
  • View visual charts to analyze productivity trends
  • Identify your most productive subjects
  • Improve consistency using data-driven insights

๐Ÿ” Daily Workflow Tip

Plan tasks โ†’ Start focus session โ†’ Take breaks โ†’ Review analytics โ†’ Improve tomorrow

StudyFlow is designed to help you build long-term study habits, not just short sessions.

๐Ÿ‘จโ€๐Ÿ’ป Developer

Developer Typing Animation

Salah Uddin Kader
Full Stack Developer | UI/UX Designer | Tech Enthusiast

Passionate about building scalable web applications and clean user experiences.
StudyFlow reflects my journey in mastering modern full-stack development.

๐Ÿš€ Always learning โ€ข Always building โ€ข Always improving

๐Ÿค Contributing

Contributions are highly appreciated and help make StudyFlow better for everyone.

How to Contribute

  1. ๐Ÿด Fork the repository
  2. ๐ŸŒฑ Create a feature branch
    git checkout -b feature/your-feature-name
    git commit -m "Add: meaningful feature description"
    git push origin feature/your-feature-name
    
    

License Banner


๐Ÿ“„ License

This project is licensed under the MIT License, a permissive open-source license that allows you to:

  • โœ… Use the software freely
  • โœ… Modify and adapt it for your needs
  • โœ… Distribute and share it
  • โœ… Use it for personal or commercial projects

As long as the original copyright and license notice are included.


ยฉ Copyright

All rights reserved under the MIT License.


License Footer Banner

StudyFlow Footer Banner

โญ Thank you for exploring StudyFlow
Happy Learning โ€ข Happy Building โ€ข Keep Growing

About

๐ŸŽฏ About StudyFlow StudyFlow is a full-stack productivity and study-management application designed to help students and self-learners stay focused, track progress, and build consistent study habits. It combines the Pomodoro technique, real-time analytics, task & subject management, and immersive focus music into a single modern experience.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published