Schooliee
A multi-tenant SaaS that runs schools end to end (students, staff, fees, and parent communication) across a web app, a mobile app, and a desktop messaging tool.
Next.js 16
React 19
TypeScript
Convex
Prisma + MongoDB
Material UI
Expo
Electron

Overview
Schooliee is a cloud-based school management system built for the Pakistani market. It's a full multi-tenant platform, where a single deployment serves platform administrators, school owners who run one or more campuses, and the parents of their students. The product spans three clients sharing one backend, a Next.js web app, a white-label Expo mobile app, and an Electron desktop tool for bulk WhatsApp messaging, and it covers everything from student records and staff management to fee collection and day-to-day parent communication. It's a large, long-running product that's still in active development.
The Problem
Running a school generates a constant stream of administrative work: enrolling and tracking students, managing staff with different permissions, issuing and chasing fees, and the part most systems handle badly, actually reaching parents. In Pakistan specifically, parents live on WhatsApp and mobile far more than email, and they're identified by CNIC (national ID) rather than an account they'd remember to create. A platform also has to serve several layers at once: the company operating it, the school owners paying for it, and the families using it. Doing all of that in one coherent system, for many schools at once, is the problem Schooliee set out to solve.
My Role & Approach
This is a large product built by a multi-developer team over a long period, and I was one of its core contributors, among the most active on the codebase across that span. The work sits across the role-based web portals and the shared front-end foundations that the different audiences depend on. The guiding architecture is separation by audience: each type of user gets its own portal and permission scope, layered so the platform admin sits above school owners, who sit above their campuses and parents. All of it runs on a backend that mixes a real-time engine for live features with a structured database for core records.
Tech Stack
Key Features
Gallery


Challenges & Solutions
The defining challenge is that Schooliee is really several products at once: three client apps and several distinct audiences sharing one system. The web app handles this with audience-scoped portals and a role hierarchy, so a platform admin, a school owner, and a parent each see a coherent slice of the same platform rather than a one-size-fits-all dashboard.
The data layer reflects a deliberate split. Live, collaborative features like chat, announcements, notifications, and push run on Convex, which is built for real-time, while the structured school records sit in Prisma over MongoDB. Using each tool where it's strongest keeps both the live features responsive and the core data well-modelled. The hardest real-world problem, reaching parents, comes down to going where they are. Instead of relying on email, the platform pushes through web and mobile notifications and a purpose-built WhatsApp desktop sender, and it identifies parents by CNIC so there's no account barrier in the way.
Outcome
Schooliee is a production platform that's still shipping daily: a genuinely large, multi-tenant system serving Pakistani schools across web, mobile, and desktop. It takes a school from enrollment through fee collection to ongoing parent communication, for many institutions at once, on a backend that balances real-time interaction with structured record-keeping. For me it represents sustained, senior-level contribution to a complex product over its long lifetime rather than a short-lived build.
Have a similar product problem?
Share the current product, the outcome you need, and the constraints already in the way. I will use that to define a sensible first milestone.
SaaS development services