01 / Context
A booking is only one part of the experience.
A customer wants to find a barbershop and book a service. The business needs to manage attendance, staff and its day-to-day operation. B-Boss brings these different perspectives into one product ecosystem.
I lead this independent product across UX, interface design and implementation. The scope includes a customer application, a business dashboard, barber and administration interfaces, and a shared API.
The design challenge
Keep each person’s next action clear while connecting the customer journey to business operations.
- Customer
- Find a barbershop and book a service.
- Business
- Understand attendance and daily activity.
- Barber & admin
- Work within dedicated operational interfaces.
02 / Design decisions
Organize around the person doing the work.

The business dashboard is a useful cross-section of the product: reporting, navigation and status need to remain understandable together. Three decisions shape that experience.
01 Separate workspaces, shared patterns
The customer and business journeys live in separate applications. Shared UI and data packages keep recurring patterns consistent while allowing each workspace to focus on its own tasks.
02 Put operational context beside the numbers
The dashboard pairs attendance summaries with a date filter, activity over time and unit comparisons. The design makes the reporting period visible so a number can be understood in context.
03 Make states distinguishable
Confirmed, validated, cancelled and expired passes appear as explicit labels. Color supports the distinction, while text keeps the meaning accessible without relying on color alone.
03 / Engineering
Shared foundations across the product.
The Nx workspace brings the applications and shared packages together. React and TypeScript power the interfaces; TanStack Router and Query handle routing and server state. The API uses Fastify, Prisma and PostgreSQL.
The trade-off is coordination: changes to a shared contract can affect several applications. Explicit schemas and shared packages make those dependencies visible instead of letting each app define its own version.
04 / Outcome & boundaries
From shared patterns to pilot testing.
The product has reached pilot testing. The work brings product flows, implemented interfaces and shared contracts into the same development process. Feedback so far comes from conversations; formal usage and business-impact measurements are still ahead.
What is demonstrated
Implemented interfaces, separate workspaces and a shared technical foundation. The source repository is private.
Next validation
Validate complete booking and operational journeys with pilot participants, then use observed task completion and feedback to guide the next iteration.