BarberCo — barbershop booking platform
BarberCo is a proof of concept barbershop booking platform. Customers book and confirm their appointments over SMS, while barbers create and view appointments in the admin dashboard. It's made up of barberco-web, BarberCo.Management, and a PostgreSQL database, all talking to a single BarberCo.Api.
The whole system is containerized with Docker and self-hosted on a single Linux cloud server behind nginx, with CI/CD handled by GitHub Actions. The map below shows how the pieces fit together.

Source code
Full monorepo — API, both front-ends, Docker, and CI/CD.
- barberco-webNext.js · App RouterExplore →Customer booking site — Next.js (App Router), React 19 & TypeScript with a two-step SMS confirmation flow.
- BarberCo.ApiASP.NET Core · EF CoreExplore →The backend — ASP.NET Core (.NET 10) Web API with JWT + API-key auth and HMAC-hashed SMS codes.
- BarberCo.ManagementBlazor WASM · MudBlazorExplore →Staff dashboard — Blazor WebAssembly + MudBlazor. An installable PWA with offline support.
- PostgreSQLRelational databaseSource of truth for appointments, customers and staff. Accessed by the API through EF Core.



