How azizahadovv/new-star-school works
New Star School is a multi-role school-management product: one React application serves administrators, directors, deputy directors, teachers, and students, backed by a Spring REST API and PostgreSQL. The central workflow is role-aware navigation to school records and academic work—classes and timetables, then grades and attendance—with results returned through the API. The backend also documents finance, admissions, communication, and operational modules. Relationships follow the documented layered backend architecture; sampled service excerpts substantiate class, timetable, grade, and Telegram behavior, but most module-specific wiring was not inspected.
Main entry points: api Academic API · repository Academic records · entity Domain entities · routes.js Role routes
Components 23
Web application
- React app
frontend/src/App.jsx - Role routes
frontend/src/app/routes.js - Server-state cache
frontend/src/app/queryClient.js
Identity and tenancy
- Authentication API
backend/src/main/java/com/nss/auth/AuthenticationController.java - Login and refresh
backend/src/main/java/com/nss/auth/AuthenticateService.java - JWT services
backend/src/main/java/com/nss/auth/JwtService.java - Role security
backend/src/main/java/com/nss/auth/SecurityConfiguration.java - Tenant context
backend/src/main/java/com/nss/tenant/TenantFilter.java
Academic management
- Academic API
backend/src/main/java/com/nss/api - Class and student records
backend/src/main/java/com/nss/service/SchoolClassService.java - Timetable planning
backend/src/main/java/com/nss/service/TimetableService.java - Grades and attendance
backend/src/main/java/com/nss/service/GradeService.java - Exams and homework
backend/src/main/java/com/nss/service - Academic records
backend/src/main/java/com/nss/repository
School operations
- Operations API
backend/src/main/java/com/nss/api - Finance and payroll
backend/src/main/java/com/nss/service - Admissions and reception
backend/src/main/java/com/nss/service - School operations
backend/src/main/java/com/nss/service - Analytics and BI
backend/src/main/java/com/nss/service - Telegram user records
backend/src/main/java/com/nss/service/telegram/TelegramUserService.java
Backend platform
- Domain entities
backend/src/main/java/com/nss/entity - PostgreSQL
Other components
- School roles
Connections 27
- School roles → React app: use
- React app → Role routes: build routes
- Role routes → Academic API: role-gated requests
- Role routes → Operations API: role-gated requests
- Academic API → Authentication API: authenticate
- Authentication API → Login and refresh: delegate login
- Login and refresh → JWT services: issue tokens
- Login and refresh → Domain entities: load user
- Role security → JWT services: validate tokens
- Role security → Tenant context: apply tenant context
- Academic API → Class and student records: delegate class work
- Academic API → Timetable planning: delegate scheduling
- Academic API → Grades and attendance: delegate grading
- Academic API → Exams and homework: serve exam work
- Class and student records → Academic records: read and write
- Timetable planning → Academic records: read and write
- Grades and attendance → Academic records: read and write
- Exams and homework → Academic records: read and write
- Operations API → Finance and payroll: delegate finance
- Operations API → Admissions and reception: delegate admissions
- Operations API → School operations: delegate operations
- Operations API → Analytics and BI: delegate analytics
- Operations API → Telegram user records: delegate user records
- Telegram user records → Domain entities: persist records
- Academic records → Domain entities: map entities
- Domain entities → PostgreSQL: persist
- Academic API → Server-state cache: return data