Skip to content

πŸ“š A Streamlit-powered Study Tracker Dashboard with secure login, personalized schedules, progress analytics, and daily session tracking.

Notifications You must be signed in to change notification settings

MohitGupta0123/Study_Tracker

Repository files navigation

πŸ“š Study Tracker Dashboard

Render App Streamlit App Python Status PRs Welcome Last Commit Issues


A beautiful and personalized πŸ“ˆ Study Progress Dashboard built using Streamlit with secure authentication. Designed for students preparing for any exam β€” to track daily goals, visualize subject-wise progress, and maintain consistency using real data, session-wise scheduling, and performance metrics.


πŸš€ Live Demo

πŸ‘‰ LIVE APP!

πŸ“Œ Main Dashboard View

Main Dashboard


πŸ–ΌοΈ Screenshots

πŸ” Additional Views

Feature Screenshot
πŸ” Login Page 1 Login1
πŸ” Login Page 2 Login2
πŸ—“οΈ Main Dashboard Main Dashboard
πŸ—“οΈ Today’s Plan Today Plan
βœ… Daily Completion Daily Completion
πŸ“Š Time Usage Time Usage
πŸ“ˆ Comparison Chart Comparison
πŸ“‰ Analysis Table Analysis Table
πŸ“‹ Tracker Grid Tracker
πŸ“¦ Overall Summary Overall Summary
🧭 Time Distribution Time Distribution

πŸ”‘ Features

  • πŸ” Login & Registration using SQLite (users.db) with streamlit_authenticator
  • πŸ“… Auto-Traced Study Sessions with date-driven scheduling
  • βœ… Checkbox Grid to mark each session as done
  • πŸ“Š Subject-Wise Progress with donut & bar charts
  • ⏳ Backlog Tracker for missed subjects
  • πŸ” Auto-Rerun Logic before session starts
  • 🧠 Per-user JSON Save State for progress
  • 🧾 Daily Completion Table with tick marks
  • πŸ“Œ Reset Button to start over anytime

πŸ—‚οΈ Directory Structure


πŸ“ study-tracker/

    β”œβ”€β”€ study\_tracker\_final.py             # Streamlit main app

    β”œβ”€β”€ auth\_db.py                           # SQLite-based authentication

    β”œβ”€β”€ users.db                             # Registered users stored here

    β”œβ”€β”€ \*.json                               # User progress files (per user)

    β”œβ”€β”€ credentials.yaml                     # (Optional) legacy credentials

    β”œβ”€β”€ Study\_Plan\_Schedule.csv              # Timetable (days Γ— session slots)

    β”œβ”€β”€ Subject\_Study\_Time\_Table.csv         # Subjects with video hours

    β”œβ”€β”€ requirements.txt                     # Python dependencies

    └── README.md                            # You're reading it πŸ™‚


πŸ› οΈ Installation

1️⃣ Clone the Repo

git clone https://github.com/MohitGupta0123/Study_Tracker.git
cd Study_Tracker

2️⃣ Install Requirements

pip install -r requirements.txt

3️⃣ Run the App

streamlit run study_tracker_final.py --server.port 8501

🧠 Tech Stack

  • Frontend: Streamlit
  • Auth: streamlit_authenticator + SQLite (users.db)
  • Charts: Matplotlib
  • Data Processing: Pandas, JSON
  • Storage: CSV files for study data, JSON for user progress

πŸ“ Data Files

File Description
Study_Plan_Schedule.csv Weekly plan (Day-wise Γ— Sessions)
Subject_Study_Time_Table.csv Subjects with total video hours
<username>_progress.json Per-user saved checkbox state

πŸ“ˆ Dashboard Features in Action

πŸ“… Today's Work

  • Auto-detects what you need to study today based on the real calendar

πŸ” Auto Rerun

  • Reruns app 5 mins before session start to alert you

🧾 Progress Tracker Grid

  • Tick off what you’ve studied; persists even after reload

🍩 Donut Charts

  • See your completion % for each subject

πŸŸ₯ Backlogs

  • Automatically shows what you've missed in previous days

πŸ“Š Time Slot Analytics

  • Frequency of time slots used across your plan

πŸ“Έ Visual Elements

  • βœ… Checkbox table for sessions per day
  • πŸ“Š Bar chart for session frequency
  • 🟑 Today's plan
  • πŸ”΄ Backlogs
  • πŸ“… Dynamic live clock
  • πŸ“ˆ Donut & pie charts showing progress distribution

πŸ” Authentication System

  • Uses SQLite-based DB (users.db) for login/signup
  • Passwords are hashed using streamlit_authenticator
  • Each user has their own progress file (<username>_progress.json)

πŸ™Œ Acknowledgements

  • Thanks to streamlit_authenticator for easy auth integration
  • Inspired by real preparation needs of students
  • Created with πŸ’™ using Python and Streamlit

πŸ‘€ Author


🌟 Support

If this helped you stay productive and consistent, please ⭐️ this repo and share it with your peers!


About

πŸ“š A Streamlit-powered Study Tracker Dashboard with secure login, personalized schedules, progress analytics, and daily session tracking.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •  

Languages