Multi-tenant school management, from admissions to payroll
Visit Live SiteEsparks Edu is a SaaS school management ERP built to unify academics, finance, HR, and daily operations in one platform. eSparks IT Solutions developed it with Next.js 16, React 19, PostgreSQL, Prisma, NextAuth.js v5, Redis, and a companion React Native app. The system supports subdomain-based multi-tenancy with row-level tenant isolation, along with RBAC across 9 roles and 4 subscription tiers (Free, Starter, Professional, Enterprise) billed through Razorpay. Its scope covers admissions, attendance, fees, exams, payroll, timetable, transport, library and report cards, helping schools manage core processes in a single system. The platform spans 60 data models across 6 logical database schemas, around 27 web modules, and 21+ mobile screens, with Firebase push notifications extending the experience to parents and students.
Parents chase paper fee receipts, teachers mark attendance on paper registers, and report cards get typed up by hand every term — with no single record of a student's actual progress.
A missed fee deadline or a dropping attendance streak often reaches a parent only at the next meeting, not when it happens.
New academic year, new timetable, new fee structure, re-enrolling returning students — most of it re-typed by hand into a dozen registers and spreadsheets.
A school doesn't need ten tools. It needs one system that already knows who's enrolled, who's paid, who's present, and who needs help.
The outcomes that actually move the needle
Academics, attendance, fees, exams, payroll and transport in a single platform — role-based dashboards for admins, teachers, accountants, parents and students.
Attendance, fees due, and exam results sync straight to the parent app — a missed class or an unpaid invoice shows up as a push notification, not a surprise later.
Razorpay-backed online payments, on the web and in the app, post straight to the ledger — accountants stop chasing receipts and start reading reports.
Classes, sections, timetables and fee structures roll forward from last year's setup instead of being rebuilt from scratch.
A subdomain, a public marketing page, and an online admissions form — families can apply before a human ever touches a spreadsheet.
Built-in tools to export or erase a student's data on request — not a compliance afterthought bolted on later.

What we designed, built and shipped
Subdomain-based multi-tenancy with row-level tenant isolation
RBAC across 9 roles + 4 subscription tiers (Razorpay billing)
Academics, attendance, fees, exams, payroll, timetable, transport & library
Companion React Native app (21+ screens) with Firebase push notifications
Every choice made for a reason — not just what's trendy
| Layer | Technology | Why |
|---|---|---|
| Web framework | Next.js 16, React 19 | Server components, one deployable app |
| Database | PostgreSQL — 6 logical schemas | Domain-separated schemas keep a 60-model system navigable |
| ORM | Prisma 5 | Type-safe queries across 60 models and 29 enums |
| Auth | NextAuth.js v5 (Auth.js, beta) | Session-based access control across 9 roles |
| Cache | Redis (ioredis + Upstash) | Fast tenant resolution and API rate limiting |
| Payments | Razorpay (web + mobile) | Webhook-verified fee collection and billing |
| Mobile | React Native (bare, not Expo) | Native performance across 21+ screens |
| Push notifications | Firebase Cloud Messaging | Real-time alerts to parents and students |
| Storage | AWS S3 | Durable storage for report cards, ID cards and uploads |
| Notifications | SMS + WhatsApp (per-tenant) | Reaches parents who don't open the app |
| Observability | Sentry + PostHog | Error tracking and usage analytics in production |
One platform, one database — every school's data is scoped by tenant, never mixed.
A school's subdomain resolves to its tenant in Redis-cached lookups, then every query is scoped by that tenant's ID across a single PostgreSQL database split into six logical schemas. Fee payments, push notifications, file storage and parent alerts all run through real, verified integrations — Razorpay, Firebase, AWS S3, and SMS/WhatsApp.
A school registers and gets its own subdomain in minutes — no procurement call required.
Classes, sections, subjects, timetable and fee structure are configured once, then roll forward each year.
Teachers, accountants and front-office staff get role-based logins; parents and students get the mobile app.
Attendance, fees, exams, homework and timetable changes flow through one system — straight to the parent app.
Analytics and at-risk alerts surface patterns — like an attendance dip — before they become a bigger problem.
We host and run the platform on your subdomain; you just onboard your school. Four real environments — dev, QA, UAT and production — back every release.
Next.js and PostgreSQL deploy behind PM2 and Nginx on your own infrastructure, with the same CI/CD pipeline we use ourselves.
Configure your own Razorpay, SMS and WhatsApp credentials per school — fees and alerts still flow through the same platform, on your account.
We'll walk you through a live tenant — academics, fees, attendance and the parent app — on a call. No commitment, no sales script.
Esparks Edu is a multi-tenant school management platform — every school gets its own subdomain, role-based dashboards for staff and families, and a companion mobile app. Here is everything the platform does.
27 modules covering academics, finance, operations and communication — role-based, so every user sees only what their job needs.
Built with React Native, not a wrapped website — role-based navigation for admins, staff, parents and students, with real-time push notifications.
Every tier includes the full platform — academics, attendance, fees, exams, payroll, timetable and the parent/student app. Higher tiers raise the student and staff limits.
Up to 100 students · 10 staff logins
Up to 500 students · 25 staff logins
Up to 2,000 students · 75 staff logins
Unlimited students & staff logins
This product is live in production — explore it for yourself.
Visit Esparks Edu — School Management ERPLet's discuss how we can help you achieve similar results for your business
Explore our other saas projects
Sparks Business is a multi-tenant platform built by eSparks IT Solutions to run inventory, purchases, sales and GST invoicing from one system. It pairs a NestJS 11 API with an installable Next.js 15 PWA, backed by PostgreSQL 17 through Prisma 6 across 49 data models. Every query is scoped to its tenant through an AsyncLocalStorage-driven Prisma client extension, and an append-only audit table is enforced at the database level — even a direct update or delete against it is rejected by a trigger. GST math (CGST/SGST/IGST splitting, GSTIN validation) runs on decimal.js for exact, rounding-free results, and a real Tally XML importer lets a business bring in existing ledgers, vouchers and stock items instead of starting over. Redis and BullMQ handle background email and document generation, S3-compatible object storage holds product images, invoice PDFs and backups, and Microsoft Graph sends transactional email. Deploys are health-gated, so a broken build never reaches production.

Retro — Sprint Retrospectives is a SaaS platform for running real-time sprint retrospectives for every team. Built with Next.js 15, React 19, PostgreSQL, Drizzle, Redis, Docker, and Socket.IO, it supports live cards, votes, presence, and a timer through Socket.IO with a Redis adapter. The product includes no-signup anonymous join with server-side device tokens, along with drag-and-drop columns, voting, board lock, and CSV/PDF export. It also features a 15-language localized UI, dark mode, and a pnpm monorepo structure. Architected as 2 apps plus 2 shared packages, the solution is designed for multi-instance realtime usage and includes Caddy auto-HTTPS for deployment-ready operation.
A production-grade Linux appliance that boots straight into a full-screen Windows RDP session — no desktop, no shell, no login prompt — backed by a self-healing watchdog and an infinite reconnect loop. On machines with Secure Boot and a TPM 2.0 chip the whole disk is encrypted (LUKS2, AES-256) with the key sealed in the machine's own TPM, and the encrypted install has been attack-tested against disk theft and boot tampering. Lost or stolen machines are wiped remotely, crypto-erasing the disk on encrypted installs. Optional per-account policy adds lock-screen password rules with a three-strike lockout, Windows-server certificate pinning, USB-storage and clipboard blocking, and memory hardening. New machines can be required to wait for administrator approval (on by default for new accounts), operating-system security patches can roll out through canary machines, and signed kernel updates roll back on their own if they fail to start. It ships as a reproducible ISO with a graphical installer and pairs with a Next.js fleet manager that provisions, monitors, secures and remotely controls the machines and the AWS, Azure and VPS Windows servers they connect to.