Skip to content

smart-developer1791/python-fastapi-learning-sprint-manager

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

1 Commit
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ“š Learning Sprint Manager

A FastAPI + Alpine.js single-page app for running learning tracks with sprint planning, review boards, deadlines, spaced repetition, and revision history.

Python FastAPI SQLAlchemy SQLite Alpine.js Tailwind CSS Render

✨ Features

  • Full SPA dashboard for creating tracks, filtering lanes, completing reviews, and logging study sessions without page reloads.
  • Learning tracks with sprint focus, difficulty, weekly target hours, deadlines, progress, mastery score, and streak tracking.
  • Spaced repetition workflow powered by review intervals and auto-generated review board cards.
  • Review board with due, overdue, and upcoming cards plus one-click completion paths (strong, solid, wobbly).
  • Revision history feed with session type, duration, confidence score, result, and scheduled next review snapshot.
  • Lane pulse map for grouped progress and mastery visibility across backend, frontend, platform, AI, career, and algorithms tracks.
  • Background scheduler that keeps due review cards in sync for active tracks.
  • Render-ready deployment via render.yaml with demo data seeded on start.

πŸ“± Responsive Support

This dashboard is optimized for desktop screens.

  • Desktop: full support
  • Tablet (landscape): full support
  • Tablet (portrait): partial support
  • Mobile: limited support

Some wide data tables require horizontal scrolling on smaller screens. For the best experience, use desktop or tablet in landscape mode.

πŸ”Œ API Endpoints

Method Endpoint Description
GET /api/snapshot Full dashboard payload (stats, tracks, review board, revision history, lane map)
POST /api/tracks Create learning track
PATCH /api/tracks/{track_id}/toggle-active Pause or reactivate track
DELETE /api/tracks/{track_id} Delete track with related sessions and review cards
POST /api/tracks/{track_id}/quick-review Log a quick revision session for a track
POST /api/reviews/sync-due Generate due review cards for active tracks
POST /api/reviews/{review_id}/complete Complete a review board card and log revision data
GET /health Health check

βš™οΈ Local Run

cd python-fastapi-learning-sprint-manager
python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
uvicorn app.main:app --reload

Open:

  • UI: http://127.0.0.1:8000
  • API docs: http://127.0.0.1:8000/docs

πŸ§ͺ Local Demo Data

Seed a realistic local dataset (tracks, revision history, review cards):

cd python-fastapi-learning-sprint-manager
.venv/bin/python scripts/seed_demo.py

Reset local demo data:

cd python-fastapi-learning-sprint-manager
.venv/bin/python scripts/reset_demo.py

☁️ Deploy on Render

render.yaml is included in the repository. You can deploy directly from this config.

Deploy to Render

About

πŸ“š Learning sprint manager with spaced repetition, review board, revision history, and progress metrics on FastAPI + SQLite.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors