Back
Year
2025
Tech & Technique
Next.js 15, TypeScript, Turborepo, Prisma, PostgreSQL, Auth.js v5, Tailwind CSS, Framer Motion, Radix UI, Recharts, Zod
Description
SchoolOS is a production-ready, multi-tenant School Management SaaS platform. Built as a Turborepo monorepo, it ships three apps — an Admin Dashboard, a mobile-first Teacher PWA, and a Marketing site — all sharing a common design system and database layer.
Key Features:
Key Features:
- 🏫 Multi-tenancy: Every model scoped by schoolId for complete tenant isolation
- 🛡️ RBAC: Four roles (Super Admin, School Admin, Teacher, Accountant) with granular permissions
- 📱 Teacher PWA: Mark attendance in under 20 seconds, installable on Android/iOS
- 🎨 Design System: Violet-primary theme, full dark/light mode, Framer Motion animations
- 📊 Analytics: Role-scoped dashboards powered by Recharts
- 🔐 Auth: Auth.js v5 with session-based RBAC middleware
My Role
Sole architect and full-stack developer:
- Designed the monorepo architecture using Turborepo and pnpm workspaces with shared packages for UI, DB, auth, types, and config
- Built the multi-tenant data model in Prisma with schoolId scoping across all entities
- Implemented Auth.js v5 with a custom RBAC middleware enforcing per-role permissions
- Developed the Admin Dashboard (Next.js 15 App Router) with analytics, student/fee/attendance management
- Built the Teacher PWA as a mobile-first installable app with offline-ready structure and bottom navigation
- Created the shared UI package on Radix UI primitives with CVA-based variant styling