How sivaraam-official/studenthub works
StudentHub is a student-records management application: staff use a browser dashboard to register, search, inspect, update, and delete students, and view course statistics and system health. The frontend calls FastAPI endpoints; request schemas validate records, CRUD functions perform queries and persistence, and SQLAlchemy maps student records to SQLite. The README documents pagination, filtering, profile and confirmation modals, and dashboard analytics. Some frontend and health-handler details are only partially excerpted, so the graph omits unverified internal links.
Main entry points: students.py Student endpoints · stats.py Stats and health · crud.py Student operations · database.py Database sessions
Components 13
Dashboard
- Dashboard UI
frontend/index.html - Dashboard behavior
frontend/js/app.js - API client
frontend/js/api.js - API configuration
frontend/js/config.js
API
- FastAPI app
app/main.py - Student endpoints
app/routers/students.py - Stats and health
app/routers/stats.py
Student Domain
- Request schemas
app/schemas.py - Student operations
app/crud.py - Student ORM model
app/models.py
Persistence
- Database sessions
app/database.py - SQLite database
Other components
- Staff user
Connections 20
- Staff user → Dashboard UI: uses
README.md - Dashboard UI → Dashboard behavior: hosts
README.md - Dashboard behavior → API client: calls
frontend/js/app.js - API client → API configuration: uses
- API client → Student endpoints: requests students
frontend/js/api.js - API client → Stats and health: requests stats and health
frontend/js/api.js - FastAPI app → Student endpoints: registers
app/main.py - FastAPI app → Stats and health: registers
app/main.py - FastAPI app → Database sessions: initializes database
app/main.py - FastAPI app → Student operations: seeds records
app/main.py - Student endpoints → Student operations: calls
app/routers/students.py - Student endpoints → Request schemas: validates and serializes
app/routers/students.py - Stats and health → Student operations: gets statistics
app/routers/stats.py - Stats and health → Student ORM model: counts records
app/routers/stats.py - Student endpoints → Database sessions: gets sessions
app/routers/students.py - Stats and health → Database sessions: gets sessions
app/routers/stats.py - Student operations → Student ORM model: queries and mutates
app/crud.py - Student ORM model → Database sessions: inherits mapping base
app/models.py - Database sessions → SQLite database: configures engine
app/database.py - Student operations → SQLite database: reads and writes
app/crud.py