My Barber App
Web booking platform for barbershops: each shop gets its own page, style, customers and bookings.
- Year
- 2025
- Role
- Full Stack Developer
- Platforms
- Web
Overview
My Barber App is a web booking platform for barbershops, built with Flutter. Each barbershop gets its own space: it customises its page's background and style and manages its own customers and bookings, kept separate from every other shop.
For customers, booking is simple and direct: pick a day, see only the slots that are actually free —with the shop's holidays taken into account— and get the notices and announcements their barbershop publishes.
Beyond the product, it's my project for learning AWS in depth: all the cloud infrastructure is defined with AWS CDK. I'm currently rebuilding it with everything I've learned so it's more solid and can grow without issues.
The challenge
Give every barbershop its own booking system, with its own look and customers, on a single platform able to grow without being rebuilt.
How I built it
Three angles I care about in every project: how it looks, how it works and how it is built underneath.
Design
Every shop, its own brand
Straightforward booking: pick a day, see only the slots that are really free and confirm. Each barbershop customises its page’s background and style so the experience feels like its own, not a generic platform.
- Booking in a few steps
- Per-shop customisation
- Real availability, no phone calls
Quality
Clear rules, clear errors
Availability accounts for each shop’s hours and holidays, and any error reaches the user as a clear message. Both the app and the cloud service have their own automated tests.
- Holidays and closures taken into account
- Understandable error messages
- Tests in the app and in the cloud
Architecture
Clean architecture end to end
The app is organised by business area —users, barbershops, services, bookings— with the rules isolated from the UI and from the cloud. The AWS infrastructure is defined as code and the app talks to it through a documented contract, so both sides never drift apart.
- Flutter in the app, AWS in the cloud
- Clean Architecture and domain-driven design
- Infrastructure defined with AWS CDK
Features
One space per barbershop
Each shop has its own space, with its customers and bookings kept apart from every other barbershop.
Own branding
Each barbershop sets the background and visual style of its page so booking feels like its own.
Booking with real availability
Customers pick a day and only see the shop’s free slots, with no back-and-forth calls or messages.
Holidays and closures
The shop’s holiday periods are automatically taken into account when computing availability.
Notifications and announcements
The barbershop publishes notices and announcements that reach its customers as notifications.
Built to grow
It runs on AWS and I’m rebuilding it with everything I’ve learned, so it’s more solid and can take on more barbershops without issues.
Outcome
In active development: I’m rebuilding the platform with everything I’ve learned to launch it on a solid foundation.
Let’s talk
Got a project in mind?
If you are looking for someone who cares about the design, quality and architecture of your next product, tell me what you need.
Get in touch