Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/praveenarya123/sps-backend/llms.txt

Use this file to discover all available pages before exploring further.

SPS School Backend is a Node.js/Express REST API that powers a complete school management system. It handles user authentication, student records, teacher workflows, attendance tracking, assignment management, application processing, and finance administration — all backed by MongoDB.

Quickstart

Run the server locally and make your first API call in minutes

Authentication

JWT-based auth with role-based access control

API Reference

Full endpoint documentation with request/response schemas

Data Models

Mongoose schemas for all resources

API domains

The API is organized around seven resource domains:
DomainBase pathDescription
Auth/api/authRegister and authenticate users
Students/api/studentAdd and retrieve student records
Teachers/api/teacherTeacher-specific actions (create assignments)
Attendance/api/attendanceMark and query attendance records
Assignments/api/assignmentSubmit student assignment work
Applications/api/applicationStudent/teacher application workflow
Finance/api/financeFee creation and listing

Tech stack

  • Runtime: Node.js with Express 5
  • Database: MongoDB via Mongoose 9
  • Auth: JSON Web Tokens (JWT) + bcrypt password hashing
  • Middleware: CORS, JWT authentication, role-based access guards

Role system

Every user is assigned one of seven roles at registration. Role middleware enforces access on protected routes.

SUPER_ADMIN

Full system access

ACADEMIC_ADMIN

Academic operations management

STUDENT_ADMIN

Student record management

FINANCE_ADMIN

Fee and finance management

OPERATIONS_ADMIN

Operational administration

TEACHER

Create assignments, approve applications

STUDENT

Submit assignments, send applications
See Roles for a detailed breakdown of each role’s permissions and which endpoints they can access.

Build docs developers (and LLMs) love