Grade Book & Report Cards
Formal exam scheduling, bulk marks entry, computed letter grades, PDF report cards, analytics, promotions, and re-evaluation — Chapter 12, NexusOne Basic tier.
The grade book covers formal written exams only (unit tests, mid-terms, finals, practicals). Quiz scores and assignment grades are handled separately. This entire module — including analytics and promotions — is part of NexusOne Basic; no AI features are involved.
Exam Types
Key Features
- Admin creates an exam schedule for a course — defines exam type, term, academic year, max marks, pass marks, and weightage
- Teacher enters marks for all students in a bulk-entry table (one row per student)
- Letter grades automatically computed from configurable thresholds (A+/A/B/C/D/F)
- Absent students marked separately — do not receive a failing grade by default
- Marks are hidden from students/parents until the admin publishes the exam
- Report cards aggregate all subject marks for the term with attendance %, dense-ranked class rank, and weightage-adjusted final grade
- Admin adds remarks before publishing the report card
- PDF report card generated server-side (pdfkit) with subject breakdown, overall grade/rank, and attendance
- Subject/class/school-wide analytics and class rankings
- Year-end promotion eligibility evaluation and decision recording, audit-logged
- Student/parent-initiated re-evaluation requests with admin review workflow
Default Grade Thresholds
A+
≥ 90
A
≥ 80
B
≥ 70
C
≥ 60
D
≥ 50
F
< pass
API Routes — Exams, Marks & Report Cards
/api/grades/examsAdmin creates an exam schedule
/api/grades/examsList exam schedules (scoped by role)
/api/grades/exams/:id/publishPublish marks — makes them visible to students/parents
/api/grades/exams/:id/marksTeacher submits marks for all students in a single request
/api/grades/student/:studentId/marksAll marks for a student (parent/admin/teacher)
/api/grades/report-cards/generateGenerate report cards for a term/year — computes rank, class size, and attendance
/api/grades/report-cards/:id/downloadDownload the report card as a PDF
API Routes — Analytics
/api/analytics/exam/subjectSubject-wise average marks and pass rate
/api/analytics/exam/classClass-level average, pass rate, and grade distribution
/api/analytics/exam/schoolSchool-wide rollup, per-class breakdown
/api/analytics/exam/student/:idA student's term-over-term performance trend
/api/analytics/exam/rankingClass/section ranking table, read from precomputed rank
API Routes — Promotions & Re-evaluation
/api/promotions/evaluateEvaluate year-end promotion eligibility from report card + attendance data
/api/promotions/approveRecord promote/detain decisions; audit-logged
/api/promotions/reportPromotion decision report for a class/year
/api/promotions/my/:studentIdStudent/parent read-only view of promotion history
/api/re-evaluationStudent/parent requests re-evaluation of a mark
/api/re-evaluation/myRequester's own re-evaluation requests
/api/re-evaluation/:id/reviewAdmin approves or rejects a request
Frontend Pages
/dashboard/admin/grades/examsList all exams; create button/dashboard/admin/grades/exams/createCreate exam schedule form/dashboard/admin/grades/report-cardsGenerate and publish report cards/dashboard/admin/grades/analyticsSubject, class, school-wide and ranking analytics/dashboard/admin/promotionsEvaluate eligibility, approve/detain, view decision report/dashboard/teacher/gradesTeacher's exam list — click to enter marks/dashboard/teacher/grades/[examId]Bulk marks entry table/dashboard/student/gradesStudent views all grades and report cardsMobile Screens
(parent)/exams, (student)/examsExam timetable and published results(parent)/report-card, (student)/report-cardReport card list with PDF download/share(student)/re-evaluationRequest and track re-evaluation of a mark(parent)/promotion-status, (student)/promotion-statusView promotion/detention decision history