Problem
Four boarding schools and a head office each need a public website and the same internal systems, without running a separate installation per school.
Approach
API-first design: a versioned Web API (/api/v1) is shared by the web app and a planned mobile client, with thin Razor Pages and use-case logic kept in the Application layer.
Architecture
Clean layers: Domain, Shared contracts, Application, Infrastructure (EF Core, Google API clients, notification and file-storage providers), Web (Razor Pages) and Api, covered by Domain, Application, Infrastructure and integration test projects.
Technology
ASP.NET Core, C#, Entity Framework Core, Razor Pages, REST APIs, Clean Architecture
Features
Admissions, student information, boarding, academics, finance, HR, communication and group reporting, plus a self-service school onboarding wizard (head-office drafts, go-live provisioning and first admin account creation).
Outcome
Under active development, with onboarding for additional schools in progress.