Skip to content

SIS Backend

Multi-tenant Student Information System for K-12 schools. NestJS 11 monolith with Entity-Scope permissions model.

Tech Stack

Layer Choice
Runtime Node.js 20+, TypeScript
Framework NestJS 11
ORM Prisma 7.3 with PrismaPg adapter
Database PostgreSQL
Auth Passport.js + JWT (argon2 passwords)
Validation class-validator + class-transformer
API Docs Swagger via @nestjs/swagger
Testing Jest 30 + Supertest
Deployment Railway (BE) + Cloudflare Workers (FE)

Key Sections

  • Architecture — Monolith-first design, module structure, data access patterns
  • RBAC Strategy — Entity-Scope-Action permission model, guard chain, token lifecycle
  • Workflows — Step-by-step checklists for common operations (add field, add scope, add entity)
  • Error Codes — Standardized error codes and response format
  • Infrastructure — Deployment, environments, CI/CD

Domain

Epics