Academic years, classes, students, guardians, attendance, and timetables - in one self-hosted system. No more spreadsheets. No more paper registers.

Clone the repo, start Postgres, and run the backend and frontend locally in a few commands. The setup guide walks through the rest - first-run admin registration, the school setup wizard, and every module hands-on.
Read the Setup Guidegit clone https://github.com/openschool-org/openschool.git
cd openschool
# Postgres
cd backend && docker compose up -d
# Backend - migrations run automatically
go run ./cmd/api/main.go
# Frontend
cd ../frontend && pnpm install && pnpm dev
From opening an academic year to marking today's attendance, OpenSchool replaces disconnected tools with one consistent, API-driven system that scales with your school.
The school profile and the first-run Setup wizard that gets a fresh instance from empty to operational.
A searchable guardian directory with notification history and portal-login status.
Daily sessions for students and staff, with locking and guardian notifications.
Preview-then-commit promotion between academic years, with marks-based or random auto-fill.
A config → build → review → publish pipeline, one class at a time.
In-app notifications with role-scoped recipient targeting and a per-user Notification Center.


Most schools still track students, grades, and attendance across paper registers and disconnected spreadsheets. OpenSchool gives every school a structured, secure, self-hosted system of record - modeled around the full Grade 1-13 flow, from Scholarship years through O/Level and A/Level streams, and the people who keep a school running.
Learn more about our missionIt's a volunteer-run, open-source project - no sales team, no support inbox. Everything happens on GitHub.
Help shape OpenSchool by submitting features, fixes, or improvements.
Local Development SetupFound a bug or have an idea? Open an issue and help make the platform better.
Open an issueAsk questions, share ideas, and talk with other people running OpenSchool.
GitHub Discussions