AI Study Planner is a practical study-planning app that turns tasks, deadlines, available hours, and progress history into a clear daily and weekly action plan.
It combines a clean Streamlit UI, SQLite persistence, and machine-learning-based task scoring to help students decide what to study next and how to stay consistent.
- Task planning with subject, deadline, difficulty, importance, and estimated hours.
- AI-assisted priority scoring and completion-risk prediction.
- Auto-generated daily timetable and weekly action plan.
- Study session logging, streak tracking, and subject performance analysis.
- Analytics dashboard with consistency trends, risk insights, and focus recommendations.
- Add study tasks with deadlines and effort estimates.
- Rank tasks by urgency, workload, and learned priority adjustment.
- Generate a timetable based on your available study hours.
- Mark tasks as completed.
- Log study sessions by subject or linked task.
- Track progress events and streaks over time.
- View weekly consistency and study-hour KPIs.
- Spot weak subjects and low-focus areas.
- Review predicted delay-risk tasks.
- Generate one-click weekly plans with lock/unlock mode.
The app uses a layered approach:
- A heuristic score estimates urgency from deadline pressure, difficulty, importance, and workload.
- When enough history exists, scikit-learn models refine the score and estimate completion probability.
- The recommendation engine combines task priority with weak-subject and recent-focus signals.
- The weekly planner converts those insights into a balanced, actionable schedule.
- Python
- Streamlit
- SQLite
- scikit-learn
- pandas
| File | Purpose |
|---|---|
app.py |
Streamlit UI and feature flow |
db.py |
SQLite schema and data access helpers |
ai_engine.py |
Priority scoring, risk prediction, and recommendation logic |
scheduler.py |
Daily timetable and weekly plan generation |
requirements.txt |
Python dependencies |
render.yaml |
Render deployment config |
- Create a virtual environment.
python3 -m venv .venv
source .venv/bin/activate- Install dependencies.
pip install -r requirements.txt- Run the app.
streamlit run app.py- Open
http://localhost:8501in your browser.
This repo includes a Render-friendly start command:
streamlit run app.py --server.address 0.0.0.0 --server.port $PORTIf you deploy on Render, connect the repo as a web service and use the command above.
- Task input system
- AI priority scoring
- Completion probability estimation
- Daily timetable generator
- Study streak tracking
- Weak-subject analysis
- Progress analytics dashboard
- Subject activity heatmap
- Delay-risk ranking
- AI coach recommendation text
- Weekly action plan generator
- Lock/unlock mode for weekly plans
- This project is intentionally practical and internship-ready.
- It does not claim advanced reinforcement learning.
- SQLite stores tasks, study sessions, and progress events locally.
Contributions are welcome. Keep changes focused and open an issue for larger ideas.
MIT License. See the LICENSE file for the full terms.