Frontend monorepo for Classora, a multi-tenant School ERP SaaS platform.
This repository contains two Next.js applications:
- Platform app — administration for the SaaS platform
- Tenant app — school-facing portal for tenant users
The frontend is built with Next.js, React, TypeScript, Tailwind CSS, TanStack Form/Table, Radix UI primitives, and shared workspace packages.
apps/
platform/ # Platform administration app (port 3000)
tenant/ # Tenant school portal (port 3001)
packages/ # Shared workspace packages
scripts/ # Deployment and maintenance scripts
| Area | Technology |
|---|---|
| Framework | Next.js 16 |
| UI Runtime | React 19 |
| Language | TypeScript |
| Styling | Tailwind CSS 4 |
| Forms | TanStack Form + Zod |
| Data Tables | TanStack Table |
| Virtualization | TanStack Virtual |
| UI Primitives | Radix UI / Base UI |
| Charts | Recharts |
| Package Manager | pnpm workspaces |
The platform app runs on port 3000 during development and is intended for platform-level administration.
pnpm dev:platformThe tenant app runs on port 3001 during development and is intended for tenant school users.
pnpm dev:tenant- Node.js 20+
- pnpm 10+
pnpm installpnpm devOr run them individually:
pnpm dev:platform
pnpm dev:tenantBuild all workspace applications:
pnpm buildBuild a single application:
pnpm build:platform
pnpm build:tenantpnpm lintThe repository includes deployment scripts for Vercel:
pnpm deploy
pnpm deploy:platform
pnpm deploy:tenant
pnpm deploy:allThe frontend is designed to work with the companion classora backend repository, which provides the NestJS API, authentication, multi-tenant domain modules, PostgreSQL persistence, Redis/BullMQ background jobs, and Swagger/OpenAPI documentation.
Active frontend for a production-style multi-tenant School ERP architecture.