Case study 03Booking platformClient: BarberSnapOngoing
BarberSnap
A booking app and a salon dashboard for barbershops.


A customer app and an admin dashboard for barbershops: scheduling, payments, loyalty, marketing and day-to-day operations. ByteNest designed the architecture across mobile, backend and admin, and leads the build through rounds of client feedback.
The brief
One system for the chair and the front desk.
BarberSnap is one system for the customer's phone and the shop's front desk. Customers book a service, a barber and a time, pay, and collect loyalty points. Owners and managers run the day from a web admin. We designed how the pieces fit, then built them with the client, one feedback round at a time.
System map
How it fits together
- 1A booking starts on a phoneThe Flutter app: pick a service, a barber and a time, collect points
- 2Rules that live in the databaseAtomic RPCs on Supabase, RLS on every table, pg_cron reminders, push through FCM
- 3One backend, two appsA Next.js admin with roles for owners and managers
- 4Three hard partsTwo customers, one free slot
Three hard parts
Two customers, one free slot
No double bookings
Two customers can tap the same slot at once. An exclusion constraint in Postgres refuses overlapping bookings for the same barber, so the database settles the race, not the app.
Money and points move together
A booking that charges but forgets the points is a support call. Booking, payment and loyalty writes are single atomic calls, and a ledger trigger owns every balance.
Built to grow
Shops have owners, managers and staff with different jobs. Owners configure, managers operate, and the schema already supports more than one shop.
On screen
The app and the admin






Stack
- Flutter
- Supabase
- PostgreSQL
- Row-level security
- pg_cron
- FCM
- Next.js
Our role: architecture and build lead.