Skip to content

Taking on new engagements

DOONKHAVTechnologies
Education · 2026

One platform, every school its own

A multi-tenant school management SaaS: a platform control plane for operators, and a full school portal for everyone inside it.

Client
NuxusEd — a DOONKHAV product
Industry
Education
Delivered
2026
DOONKHAVNuxusEdEducation
Tenancy
Multi-tenant
Portals
5 surfaces
Lapsed billing
Read-only, not locked
Inside NuxusEd
NuxusEd — screenshot
Case study
Client
NuxusEd — a DOONKHAV product
Industry
Education
Problem
Manual, single-school admin tools could not serve a multi-tenant SaaS with platform operators, school administrators and parents in one system.
Solution
A multi-tenant school management platform — a control plane for operators plus a full school portal spanning academics, staff, attendance, LMS, exams and finance.
Technology
NestJS · Next.js · PostgreSQL · Redis · Docker · AWS
Result
Automated provisioning, admissions, attendance, fees and reporting across five surfaces, with lapsed billing dropping to read-only instead of locking a school out mid-term.

The problem

Three audiences with incompatible mental models had to share one system. Platform operators think in subscriptions, provisioning and uptime. School administrators think in academic sessions, staff and fees. Parents think about one child. The risk was never the feature list — it was letting the complexity of any one surface bleed into the other two.

How we built it

  • Built a tenant provisioning pipeline with observable failure states, so a half-created school is visible rather than silently broken.
  • Split the product into a platform control plane (subscriptions, invoicing, audit log, health) and a school portal (academics, staff, attendance, LMS, exams, finance).
  • Used a transactional outbox for side effects, so a failed email or webhook cannot roll back an enrolment.
  • Enforced read-only mode on subscription lapse instead of cutting access — a school mid-term keeps its records.
  • Tracked academic-session dependencies explicitly, so an admin can see what is blocking a new session before opening it.

The result

Automated provisioning, admissions, attendance, fees and reporting across five surfaces, with lapsed billing dropping to read-only instead of locking a school out mid-term.

Technology
  • NestJS
  • Next.js
  • PostgreSQL
  • Redis
  • Docker
  • AWS
Let’s build

Have a system in mind? We'll engineer it.

Tell us what you’re trying to make work. If a discovery is the right next step we’ll say so — and if it isn’t, we’ll say that too.