School Management Dashboard
Schools coordinate timetables, exam results, attendance, and user access across disconnected spreadsheets and manual records.

Role & Personal Contribution
Full-Stack Developer — Started from an open-source UI template and built everything behind it: Prisma/MongoDB schema, NextAuth authentication, role-based routing, server actions, the timetable engine, and performance analytics.
The Operational Problem
Administrators, teachers, students, and parents need one system where each role sees only the schedules, records, and results relevant to them.
The Engineered Solution
A Next.js dashboard backed by MongoDB and Prisma, with four user roles, an admin approval queue for new accounts, a custom weekly timetable with conflict checks, and result analytics.
Engineering Architecture & Decisions
Next.js 14 App Router with auth and dashboard route groups. Server Components query Prisma directly, Client Components handle modals and charts, and Server Actions handle mutations.
NextAuth credentials provider with bcrypt password hashing and JWT sessions. Edge middleware restricts routes by role, and server actions and API routes verify the session and role.
MongoDB through Prisma ORM with 14 models and 6 enums. Forms are validated with Zod and React Hook Form.
Building a conflict-free weekly timetable (7 days, 9 slots) without a calendar library, with filtering by class and teacher and overlap detection before saving a lesson.
Decision: Modeled Admin, Teacher, Student, and Parent as four separate Prisma models instead of one User table. This gives clean role-specific relations but needs dynamic table lookups in auth and approval code.
Delivered: A working multi-role dashboard with 24 routes covering registration approval, CRUD for 10 entities, timetables, attendance, and exam results.
Key Features
Core functionality and product workflows engineered for School Management Dashboard.
Interactive Weekly Timetable
Custom schedule grid with class and teacher filtering and conflict validation when creating lessons.
Role-Based Access
Four roles with route-level protection through middleware and role-aware navigation.
Academic Performance Analytics
Class averages, score distributions, and term-over-term growth charts.
Account Approval Queue
Admins review, approve, or reject pending student, teacher, and parent registrations.
Modal CRUD Workflows
Unified create, edit, and delete forms for 10 school entities with Zod-validated inputs.
Turn your vision into a production-ready web app.
From concept to deployment — I build clean, high-performance web products that scale and convert.