The story
The brief
A performing arts school running after-school programmes and weekend classes was paying high fees for a white-label CRM that still left staff chasing payments by hand, with no app for parents. They wanted the same functionality on a system they own, without the middleman fees, and with the option to white-label it themselves in future.
What I built
A web admin portal for classes, venues, terms, registers and invoicing, plus one iOS and Android app where parents manage their children's enrolments and payments and teachers run their rota and take registers from the room. Billing runs directly on the school's own Stripe account: deposits, monthly fees, annual memberships, pro-rata changes and failed-payment follow-ups all happen automatically, behind role-based access and a full audit log.
The result
Launching in Q4 2026, with existing families migrated from the old system. Once live, enrolment, billing and cancellations run end to end with minimal manual work, and parents and teachers serve themselves from their phones.
Stack
- Python
- FastAPI
- PostgreSQL
- React
- TypeScript
- React Native (Expo)
- Stripe
- AWS
- Terraform
- Docker