BeautySalon

Role / Services

  • Full-stack development

Context

  • Booking platform

Location & year

  • Hungary ©

Overview

Self-service booking without double bookings.

BeautySalon is an appointment booking platform for salons. Customers choose services, pick a time and book or cancel on their own, while administrators manage availability. It replaces phone-based bookings and spreadsheet tracking.

It was built as a production-oriented system, with the emphasis on transactional consistency, secure authentication and long-term maintainability. The screenshots show it running under the demo brand Amoy.

BeautySalon booking step for picking services, with a running appointment summary and total
Booking flow: choosing services, with a running summary of the appointment.

Key features

  • Appointments

    Real-time booking and cancellation, conflict prevention for overlapping reservations, and validation at every step of the booking flow.

  • Accounts & roles

    Sign-in with Google and Facebook through OAuth, token-based authorization and role-based permissions.

  • Administration

    Administrators manage availability, while the backend enforces the business rules of every booking.

Architecture

Blazor SSR on a layered ASP.NET Core backend.

The frontend is a Blazor Web App using server-side rendering for fast first loads, built from reusable components. Secured ASP.NET Core endpoints orchestrate appointments, users and business rules.

Data lives in SQL Server on Azure. Dapper was chosen over a full ORM for explicit control of the SQL and predictable query behaviour, with the booking logic encapsulated in a repository layer.

The hard part

Preventing double bookings under concurrent load.

Client-side checks cannot stop two customers from booking the same slot at the same moment. Bookings are therefore validated inside database transactions and written atomically, so overlapping reservations are rejected even when requests arrive together.

Appointments are modelled as normalized time intervals derived from service durations, with the overlap rules validated in one central place.

Technologies

  • Blazor Web App (SSR)
  • ASP.NET Core
  • C#
  • SQL Server
  • Dapper
  • OAuth 2.0
  • Microsoft Azure