Skip to content
AY
All work
Booking & PaymentsCuutters2026Barbershops & Salons

Cuutters Platform: a complete barbershop operating system

A production React/Vite/Supabase app that replaces off-the-shelf salon software — live queue, booking, in-person POS, CRM, inventory, payroll, and a franchise-ready HQ dashboard.

The problem

Off-the-shelf salon software is a patchwork: one app for booking, another for payments, a third for marketing, and a spreadsheet for payroll. None of them talk to each other, and none of them were built for how a hospitality-driven barbershop actually runs its floor. Cuutters needed a single system that could run the shop day-to-day and scale into a franchise.

What I built

A production operating system for the whole business:

  • Live queue & booking — two-stage check-in (remote check-in → arrived), online booking, and self-service appointment management.
  • In-person payments — Stripe Terminal POS live in production with a card reader, refunds and voids, and end-of-day drawer reconciliation with a per-stylist breakdown.
  • CRM & retention — loyalty milestones with automatic credits, automated retention campaigns, appointment reminders, and a two-way SMS inbox (Twilio).
  • Operations — inventory that auto-decrements on each sale, staff schedules, timesheets and payroll, tardiness reporting, performance goals, and built-in hiring and applicant vetting.
  • Franchise-ready — an HQ dashboard with a system scorecard, location drill-down, royalty calculator, and alerts. Multi-tenant architecture with four-role auth is planned.

Engineering

  • Security audit plus a Supabase Auth migration with row-level security across 24 tables.
  • Refactored an ~18K-line monolith into a modular app with a ~2K-line shell.
  • Design-token CSS system for consistent, themeable UI.
  • Migrated hosting to Vercel.

Outcome

Cuutters runs on software it owns — one system instead of five, built around the way the shop actually operates, and ready to replicate across locations.

Screenshots

Demo or seed data only — no customer information is shown.

Live queue with two-stage check-in — arrived, in-chair, en route (demo data)
Live queue with two-stage check-in — arrived, in-chair, en route (demo data)
Franchise HQ dashboard: location benchmarks, scorecard, royalty calculator (demo data)
Franchise HQ dashboard: location benchmarks, scorecard, royalty calculator (demo data)
Reporting: revenue breakdown, stylist performance, memberships, CSV export (demo data)
Reporting: revenue breakdown, stylist performance, memberships, CSV export (demo data)

Need something like this for your business?

Book a free 20-minute call and we'll map out exactly what would move the needle for you.

Book a callCall