How shiroshoes/novasight works
NovaSight is a Flask-based academic analytics application for managing grade-sheet uploads, validating and preparing student data, and serving role-specific dashboards and forecasts. The main workflow runs from an administrator’s upload through preprocessing and catalog checks into persisted datasets; training and analytics then use those datasets to support historical and predictive views. The tree and excerpts support the main data-access and dashboard links, but do not expose every route implementation, so uncertain internal wiring is omitted.
Main entry points: db_io.py Dataset data access · app.py Flask application · preprocess.py Workbook preprocessing · fileupload.js Upload interface
Components 19
Application access
- Flask application
app/app.py - Admin routes
routes/admin.py - College routes
routes - User models
database/models.py
Dataset ingestion
- Upload interface
app/static/js/fileupload.js - Upload API
ml_route/upload_rotues.py - Workbook preprocessing
preprocessing/preprocess.py - Catalog validation
preprocessing/course_catalog_checker.py - Warning rules
preprocessing/warnings_core.py
Analytics and prediction
- Model training
training/auto_train.py - Historical dashboard API
ml_route/maindash_routes.py - Analytics endpoints
ml_route/ml_analysis.py - Prediction API
ml_route/prediction_api.py - Historical dashboard UI
app/static/js/maindash.js - Dean dashboard UI
app/static/js/deandash.js - Prediction dashboard UI
app/static/js/prediction-dash.js
Persistence
- Dataset data access
util/db_io.py - MySQL database
Other components
- Academic staff
Connections 21
- Academic staff → Flask application: uses
- Flask application → Admin routes: registers routes
- Flask application → College routes: registers routes
- Flask application → User models: authenticates users
- Academic staff → Upload interface: submits workbook
- Upload interface → Upload API: sends upload
- Upload API → Workbook preprocessing: processes workbook
- Workbook preprocessing → Catalog validation: checks catalog
- Workbook preprocessing → Warning rules: records warnings
- Workbook preprocessing → Dataset data access: stores datasets
- Dataset data access → MySQL database: reads and writes
- Model training → Dataset data access: loads and records
- Academic staff → Historical dashboard UI: views history
- Historical dashboard UI → Historical dashboard API: requests dashboard data
- Historical dashboard API → Dataset data access: loads datasets
- Academic staff → Dean dashboard UI: views college analytics
- Dean dashboard UI → Analytics endpoints: requests analytics
- Analytics endpoints → Dataset data access: loads model datasets
- Academic staff → Prediction dashboard UI: views forecasts
- Prediction dashboard UI → Prediction API: requests predictions
- Prediction API → Dataset data access: accesses stored data