E.D.G.E school management system
School platform covering registration, attendance, marks, fees and timetables, with a DDD backend and a React admin
E.D.G.E brings a school's day-to-day work into one system: registering students, taking attendance, recording marks, billing fees and building timetables. I worked across the backend and the admin app and ran the delivery plan for the five-month build.
The problem
Schools kept student records, attendance, marks and fee payments across paper registers and spreadsheets. Setting up a new academic year meant rebuilding classes, sections and timetables by hand.
What I built
A NestJS backend organised by domain (students, teachers, guardians, classes, grades, registration, attendance, marksheets, timetables, academic years, fees, notices) using CQRS, with tokens validated against the company identity server. A React admin gives each role its screens, with an academic-year setup wizard, drag-and-drop scheduling and Excel and PDF exports.
Results
- Delivered on a five-month schedule with a multi-developer team.
- Staging deploys automatically on every push to the develop branch through GitHub Actions and Traefik.
- Wrote the admin app's coding standards and layout architecture notes used by the rest of the team.
Features
- Student, parent, teacher and staff records
- Registration and class assignment
- Attendance, exams and mark lists
- Fee structures, discounts and payments
- Academic calendar and year setup wizard
- Timetables with drag-and-drop ordering
- Notice board and reports with Excel and PDF export
How it's put together
Domain-driven NestJS backend with a schema-driven code generator and an internal event system, fronted by a TanStack Router admin app that signs in through the Genesis identity server.
- CQRS command and query handlers per module
- JWKS-based JWT validation against the identity server
- Scheduled jobs for recurring academic tasks
- PostgreSQL with pgAdmin in Docker Compose, Traefik on the staging VPS
Related projects
- Web apps2024–2025
Dallol Talent
UK-based client
Remote talent marketplace for the European market, built from scratch by a two-person team
Team buildReactReduxTypeScript+6
Backends & APIs2025Soko Commerce
Headless commerce on .NET 9 with CQRS, its own identity server, search and durable workflows
Contributor.NETC#EF Core+15
Web apps2026Church management platform
Multi-tenant church management: members, households, attendance, forms, analytics and WhatsApp messaging
Solo buildNext.jsReactTanStack Query+11