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

Releases

No releases published

Packages

 
 
 

Contributors