HOMEPROJECTSSCHOOL MANAGEMENT SYSTEM

SCHOOL MANAGEMENT SYSTEM

Multi-tenant SIS + LMS for schools

Category
Multi-tenant SaaS / PaaS - combined Student Information System (SIS) and Learning Management System (LMS)
Type
Multi-tenant SaaS
Role
Full-Stack Developer - architecture, backend API, frontend, database design, deployment
01
OVERVIEW

A cloud-hosted platform that lets a school run its entire operation from one place: admissions and enrollment, academics and grading, attendance, fees and accounting, timetabling, communication, and reporting. Each school is an isolated tenant with its own users, data, branding, and configuration while sharing a single deployed codebase and database, the SaaS model. Separate role-based portals serve administrators, teachers, students, parents, librarians, finance supervisors, and external inspectors. The system is campus-scoped: a school can operate one or many campuses, and every record, permission, and report respects that boundary so data never leaks across campuses or tenants.

02
ARCHITECTURE

MULTI-TENANCY & ACCESS CONTROL

Tenant-per-school isolation with campus-level scoping on every query. Role-based portals for admin, teacher, student, parent, librarian, finance supervisor, inspector, and superadmin, with granular per-module permissions, teacher messaging controls, and configurable sidebars and login pages per school.

DATABASE AS THE AUTHORIZATION LAYER

Supabase-managed PostgreSQL with Row-Level Security policies as the primary authorization layer, so tenant and campus isolation never depends on application code. JWT auth with TOTP-based two-factor (otplib) and social login on top.

SINGLE MULTI-TENANT DEPLOYMENT

One shared codebase and database behind a Passenger-compatible Node entrypoint. Supabase Storage holds media, documents, and generated files. node-cron drives scheduled jobs - automatic attendance records, reminders, and year rollovers.

03
KEY MODULES

Student Information System

Admissions, online signup links, pending-signup review, and enrollment workflows. Bulk student import from Excel/CSV with de-duplication and retry-safe ingestion. Custom fields with drag-and-drop category ordering per campus.

Academics & LMS

Courses, marking periods, grading scales, gradebook, final grades, and report cards. Assignments, quizzes, lesson plans, class diary, learning resources. Automated timetable generation with teacher constraints, plus online classes via Jitsi and subject-specific tools.

Attendance & discipline

Daily and period attendance with calendars, automatic record generation via scheduled jobs, discipline incidents and alerts, entry/exit and evening-leave tracking, and hostel management.

Fees & accounting

Campus-scoped fee structures, billing elements, and payment timelines. Manual receipt numbers, editable amounts, multi-currency display, staff salary and payroll, school inventory, and accounting ledgers.

Documents & communication

Designers for certificates, ID cards, and letter templates with server-rendered PDF output. In-app messaging, mail, feedback, and grievance channels backed by web-push and email on cron schedules.

External inspection module

A dedicated inspector portal: scheduled visits, rubric-based evaluations, coaching notes, appeals, digital signatures, media evidence, a forum, and broadcast messaging.

AI setup assistant

An AI-guided assistant that helps a new school configure grades, sections, and settings during onboarding.

04
HIGHLIGHTS
  • Designed a multi-tenant, campus-scoped data model where authorization is enforced at the database layer via Postgres Row-Level Security, not just in application code.
  • Built retry-safe bulk import that prevents duplicate students when an upload is re-run after a partial failure.
  • Implemented server-side PDF pipelines with Puppeteer for report cards, certificates, ID cards, and receipts, driven by visual template designers.
  • Added real-time cross-session sync so edits propagate to other open sessions without a manual refresh.
  • Shipped fine-grained module and messaging permissions, configurable per school and per role.
  • Covered 100+ REST resource groups spanning academics, finance, HR, scheduling, library, hostel, and inspections.

FULL STACK

Next.js 16React 19TypeScriptTailwind CSS v4Radix UI / shadcnZustandSWRReact Hook FormZodRechartsTipTap@dnd-kitNode.jsExpressSupabasePostgreSQLRow-Level SecurityJWT + TOTP 2FAPuppeteerNodemailerweb-pushnode-cronExcelJS@anthropic-ai/sdkJest