How myeniamahle/studentreach works
StudentReach is a backend API for viewing student profiles, identifying risk signals, and managing resulting advisor flags. The main workflow loads student histories, evaluates attendance, assignment, funding, and engagement rules, combines recent signals, and persists flags; API clients can then review flags and record decisions. The sampled frontend and login files are explicitly examples that are not connected or functional, so they are excluded. The schema path is documented, but its table definitions were not sampled.
Main entry points: server.js Express API · runDetection.js Detection runner · db.js PostgreSQL pool · repository.js Student repository
Components 10
API
- Express API
backend/src/server.js - Student routes
backend/src/server.js - Detection route
backend/src/server.js
Student Data
- Student repository
backend/src/repository.js - PostgreSQL pool
backend/src/db.js - StudentReach database
backend/sql/schema.sql
Risk Detection
- Risk rules
backend/src/detection.js - Detection runner
backend/src/runDetection.js
Flag Review
- Flag routes
backend/src/server.js
Other components
- API client
Connections 12
- API client → Express API: requests API
- Express API → Student routes: dispatches
- Express API → Flag routes: dispatches
- Express API → Detection route: dispatches
- Student routes → Student repository: loads students
- Student repository → PostgreSQL pool: queries histories
- PostgreSQL pool → StudentReach database: reads and writes
- Flag routes → PostgreSQL pool: queries and updates
- Detection route → Detection runner: runs detection
- Detection runner → Student repository: loads students
- Detection runner → Risk rules: evaluates students
- Detection runner → PostgreSQL pool: persists flags