Muhammad Arslan
Нанять меня
Назад к проектам

Schooliee

Мультитенантный SaaS, управляющий школами от и до (ученики, персонал, оплата и общение с родителями) через веб-приложение, мобильное приложение и десктопный инструмент для обмена сообщениями.

Роль: Core front-end engineer (multi-developer team)Сроки: 2025-presentТип: Multi-tenant SaaS (web + mobile + desktop)

Next.js 16

React 19

TypeScript

Convex

Prisma + MongoDB

Material UI

Expo

Electron

Превью справочника учеников Schooliee с демонстрационными записями

Обзор

Schooliee — это облачная система управления школами, созданная для рынка Pakistan. Это полноценная мультитенантная платформа, где одно развертывание обслуживает администраторов платформы, владельцев школ, управляющих одним или несколькими кампусами, и родителей учеников. Продукт охватывает три клиента, использующих один бэкенд: веб-приложение Next.js, white-label мобильное приложение на Expo и десктопный инструмент Electron для массовых рассылок в WhatsApp. Платформа покрывает все — от записей учеников и управления персоналом до сбора оплаты и ежедневного общения с родителями. Это крупный долгосрочный продукт, который все еще находится в активной разработке.

Проблема

Управление школой порождает постоянный поток административной работы: зачисление и отслеживание учеников, управление персоналом с различными правами, выставление и сбор оплаты, и та часть, с которой большинство систем справляется плохо — реальный контакт с родителями. В Pakistan родители гораздо чаще пользуются WhatsApp и мобильными устройствами, чем электронной почтой, и они идентифицируются по CNIC (национальному удостоверению личности), а не по учетной записи, которую нужно было бы не забыть создать. Платформа также должна обслуживать несколько уровней одновременно: компанию-оператора, владельцев школ, которые за нее платят, и семьи, которые ее используют. Выполнение всего этого в одной согласованной системе для множества школ одновременно — вот проблема, которую должен был решить Schooliee.

Моя роль и подход

Это крупный продукт, созданный командой из нескольких разработчиков за длительный период, и я был одним из его основных контрибьюторов, одним из самых активных разработчиков кодовой базы за это время. Работа охватывает веб-порталы на основе ролей и общие основы фронтенда, от которых зависят различные аудитории. Руководящая архитектура — разделение по аудиториям: каждый тип пользователя получает свой собственный портал и область разрешений, многоуровнево организованные так, что администратор платформы находится над владельцами школ, которые, в свою очередь, находятся над своими кампусами и родителями. Все это работает на бэкенде, который объединяет движок реального времени для живых функций со структурированной базы данных для основных записей.

Стек технологий

ВебNext.js 16 (App Router) with React 19, TypeScript, Material UI + Emotion, and Tailwind
Бэкенд / данныеConvex for real-time features (chat, notifications, announcements, push) alongside Prisma over MongoDB for structured records
АвторизацияJWT with bcrypt, plus one-time-password flows
МобильныйExpo / React Native, white-labelled per school brand and built through EAS
ДесктопElectron, a dedicated WhatsApp-sender application
AIVercel AI SDK with OpenAI for an in-product chat assistant
ОбщениеResend with React Email, web push, Expo push, and WhatsApp
ПоддержкаApexCharts, CKEditor, dnd-kit, PapaParse (CSV), camera/media capture, Serwist (PWA), and PostHog analytics

Ключевые особенности

Мультитенантная архитектурауровень суперадмина управляет владельцами, владельцы управляют кампусами, а кампусы обслуживают родителей и учеников, и все это изолировано по ролям.
Порталы на основе ролейотдельные интерфейсы для администратора платформы, владельцев школ (биллинг, кампусы, финансы, задачи) и родителей.
Управление учениками и персоналомпрофили, отслеживание успеваемости и доступ на основе ролей для сотрудников.
Финансовая системаотслеживание оплаты, выставление счетов, платежи и биллинг владельцев.
Портал для родителей по CNICродители находятся по национальному ID, что соответствует тому, как идентификация на самом деле работает на местном уровне, с просмотром оплаты и общением.
Сопутствующее мобильное приложениеwhite-label приложение на Expo, которое меняет оформление под бренд школы.
Десктопный отправитель WhatsAppинструмент на Electron для массовой рассылки сообщений родителям по каналу, который родители действительно используют.
AI-чат-ассистентвстроенный в продукт ассистент, созданный на AI SDK.
Объявления и уведомления в реальном временидоставляемые в режиме реального времени через веб- и мобильные push-уведомления.

Галерея

Превью дашборда Schooliee с примерами школьной статистики
Превью управления оплатой Schooliee с демонстрационными балансами и записями учеников

Сложности и решения

Определяющая сложность заключается в том, что Schooliee — это на самом деле несколько продуктов одновременно: три клиентских приложения и несколько разных аудиторий, использующих одну систему. Веб-приложение справляется с этим с помощью порталов, ориентированных на аудиторию, и иерархии ролей, так что администратор платформы, владелец школы и родитель видят связную часть одной и той же платформы, а не универсальный дашборд для всех.

Уровень данных отражает осознанное разделение. Живые, совместные функции, такие как чат, объявления, уведомления и push, работают на Convex, который создан для реального времени, в то время как структурированные школьные записи находятся в Prisma поверх MongoDB. Использование каждого инструмента там, где он наиболее силен, сохраняет отзывчивость живых функций и хорошую модель основных данных. Самая сложная проблема в реальном мире, охват родителей, сводится к тому, чтобы идти туда, где они находятся. Вместо того, чтобы полагаться на электронную почту, платформа отправляет уведомления через веб и мобильные устройства, а также через специально созданный десктопный отправитель WhatsApp, и она идентифицирует родителей по CNIC, поэтому на пути нет барьера в виде учетной записи.

Результат

Schooliee — это продакшен-платформа, которая все еще обновляется ежедневно: по-настоящему крупная, мультитенантная система, обслуживающая школы в Pakistan через веб, мобильные устройства и десктоп. Она проводит школу от зачисления до сбора оплаты и постоянного общения с родителями, для многих учреждений одновременно, на бэкенде, который балансирует взаимодействие в реальном времени со структурированным ведением записей. Для меня это означает длительный, на уровне Senior вклад в сложный продукт на протяжении всего его жизненного цикла, а не краткосрочную разработку.

Столкнулись с похожей продуктовой задачей?

Расскажите о текущем состоянии продукта, необходимом результате и имеющихся ограничениях. На основе этого я сформулирую понятный первый этап.

Услуги разработки SaaS
Заполнить бриф проекта
Все проектыСледующий проектAtomic
Schooliee: Облачная мультитенантная система управления школой (SaaS) | Muhammad Arslan