Cambridge SMS
Multi-portal school management system for Cambridge-curriculum schools.
- Stack
- Next.js 16 · Supabase
- Role
- Design + build
- Status
- Live demo
- Year
- 2026
A Cambridge-curriculum school, like any institution, runs on a tangle of spreadsheets, WhatsApp groups and paper registers. Pupils’ grades live in one place; their attendance lives in another; their fee balance is known only to the bursar; the parent finds out about Friday’s field trip from a forwarded message. The brief was to replace that tangle with one calm system — without inventing a new vocabulary or asking the staff to learn one.
We modelled the school the way the school models itself. Term I, Term II, Mid-Term, End-Term — the same words a teacher writes at the top of an exam paper. Years 7 to 11 organised by stage (Lower Secondary, IGCSE). Roles that match the staff handbook: head, teacher, parent, pupil.
From there: four portals, one database, row-level security at the table. A parent can never read another family’s record, because the database won’t serve it — not because the screen happens to hide it. A teacher can mark today’s register with one tap, but cannot edit a class they don’t teach. The head sees everything. The pupil sees themselves.
What ships when you open the demo.
Portals
Four roles, one database.
Admin, teacher, parent and pupil each see exactly what they should — never each other's data. The database enforces it; the UI just reflects it.
Modules
Every module a school actually uses.
Admissions, attendance, grades, fees in TZS, library, timetable, announcements, staff. No premium tier, no upsells.
Security
Trust at the storage layer.
Bcrypt-hashed passwords, cookie sessions, row-level security on every table. Audit-friendly defaults a head can sign off on.
Boring choices, deliberately.
- Next.js 16
- React Server Components keep the database off the wire. Static where possible, dynamic where it matters.
- TypeScript
- Schema-driven types from the database flow all the way to the form components.
- Tailwind v4
- Tokenised design system; consistent spacing, colour and type without ad-hoc CSS.
- Supabase
- Postgres + Auth + Row-Level Security. The same backend will serve the future Flutter mobile app.
The demo runs with a realistic small school: 121 pupils across 8 classes, 12 teaching staff, 90 days of attendance, 9,168 individual grade entries. Four demo accounts — admin, teacher, parent, pupil — let prospective heads click through their actual day in fifteen minutes.
Next: the Flutter mobile companion (same Supabase project, same row-level security), n8n workflows for fee reminders and absence alerts, and a real payment gateway for term-fee collection.
One licence. Three platforms. Yours forever.
Cambridge SMS is sold as a perpetual school licence — one payment, no subscription, no per-pupil fees. Maintenance is pay-as-you-go, only when you need us.
School licence · one-time
Cambridge SMS
Fifteen million Tanzania Shillings · perpetual licence
- Web app — admin, teacher, parent, and pupil portals on a single Supabase project
- iOS app — native Flutter build for parent + pupil seats, signed and submitted to the App Store on your account
- Android app — native Flutter build for parent + pupil seats, signed and submitted to Google Play on your account
- Deployment onto your locally-hosted Supabase + domain, with row-level security on every table
- On-site handover + training for the office team and a teacher cohort
- Source-of-record ownership — your data stays your data, indefinitely
Maintenance & support
On-demand · pay-as-you-go
Billed only for days worked. Client covers travel and accommodation when on-site work is required.
What the school provides
Deployed onto your own infrastructure
- Locally-hosted Supabase project (Tanzania / regional)
- Domain registration with a local provider
- Reliable internet + workstations
- Apple Developer + Google Play accounts (for the mobile builds)
- A named office champion to co-lead the rollout
All licences include deployment to your locally-hosted Supabase + domain, row-level security on every table, real authentication for admins, teachers, parents, and pupils, and on-site handover + training for your office team. Custom integrations (payment gateways, ID badges, exam board reporting) quoted separately under a 4-week pilot.
Next step
Want to see this with your data?
A 30-minute walkthrough is usually enough. We’ll log in and show you the system from every seat — head, teacher, parent, pupil — and tell you honestly what would need to change.