
Grandes Ligas Barber Shop
A busy bilingual barbershop in Framingham, MA was losing bookings to phone tag and double-booked chairs. Six weeks later, customers book their own 15-minute slots online in English or Spanish, get automatic reminders, and the chairs stay full.

The short version
What changed for the business
The problem
Bookings came in by phone and text, and two customers sometimes showed up for the same chair. Reminders depended on someone remembering to send them, and half the customers preferred Spanish.
What we built
A website in English and Spanish with online booking built in. Customers pick a barber and a 15-minute slot, availability updates the instant anyone books, and reminders go out by text and email automatically. The owner runs it all from one dashboard.
What changed
Double-bookings can't happen. Customers book at 11 pm without calling. Reminders go out on their own, so fewer people forget. Six weeks from the first conversation to live.
At a glance
One website, one booking system, six weeks
From idea to live and taking bookings
Fully bilingual: English and Spanish
Customers book their own time online
Owner, manager, and barber each see what they need
Timeline
How the six weeks played out
Design, booking, the owner's dashboard, and reminders overlapped, so each piece landed on top of a working site the shop was already reviewing.
Online booking
Not a plug-in. Booking that works the way the shop works.
Instead of bolting on a generic booking widget, we built Grandes Ligas its own, tuned to how the shop actually runs its chairs.
Always current, no refreshing
15-minute slots, a month ahead
Barbers block their own time
Reminders that send themselves
Safe, quietly
Everything that keeps it safe runs underneath
Booking a haircut should feel simple. The protection is there; the customer never has to think about it.
The right people see the right things
Owner, manager, and barber each have their own access. A barber can only change their own appointments.
Protected against junk and abuse
Every form and message is checked before it's accepted, and nobody can flood the system with fake bookings.
Text messages done by the rules
Customers opt in, can reply STOP at any time, and messages come from a properly registered number.
Changes tested before they go live
Every update runs on a separate test copy first, so the live site the customers use never breaks.
The full build
An owner's dashboard and a bilingual storefront
The owner's dashboard
A storefront in English and Spanish
We didn’t bolt a booking widget onto a template. In six weeks Grandes Ligas got a site in two languages and a booking system built for their chairs, and they own all of it.
— GDI Digital Solutions · Grandes Ligas Barber Shop build
See it in action
Explore the live Grandes Ligas Barber Shop site, in English and Spanish, and try the online booking.
Tech notesfor the technically curious
Most of our clients never ask. If you're the kind of person who does, here's what's under the hood.
- Site & hosting
- A React site on AWS Amplify with Amazon Cognito providing owner, manager, and barber roles.
- Live availability
- Firebase Firestore subscriptions recompute open slots in real time for every connected browser.
- Reminders
- A scheduled cloud job runs every 15 minutes and sends SMS and email reminders from a registered origination number with STOP/HELP handling.
- Delivery
- GitHub Actions deploys separate test and production environments; every endpoint validates input and rate-limits requests.
Still taking bookingsby phone?
Salons, clinics, studios, repair shops: if customers have to call you to get a slot, this is the shape of the fix. Tell us how your day runs.