.shot { transition: transform 0.5s cubic-bezier(0.23, 1, 0.32, 1); } .shot:hover { transform: translateY(-8px); }
Success Story: Premium Hospitality

Zeus Barbershop:
The Digital Men’s Club, second generation.

A premium men’s club in Varna, Bulgaria, whose clients book, collect cashback and rate their visits in a native-feeling app — built once in Kotlin for iOS and Android, and wired to the salon’s CRM through a middleware that can outlive it.

Client
Zeus Barbershop
Platform
iOS & Android
App
Kotlin / Compose Multiplatform
Backend
Ktor · PostgreSQL

The Challenge

A loyalty card that could not book

Zeus is not a standard barbershop — it is a men’s club where the visit is the product. Its first-generation app was essentially a digital loyalty card, and the salon’s day-to-day ran in a cloud CRM: schedule, clients, records, cashback, reviews. Clients booked by phone, on the website or at the front desk; the app knew nothing about it.

What had to change:

  • ● Bookings, loyalty and reviews lived in the CRM but were invisible to the app.
  • ● Two native codebases to maintain for every feature and every fix.
  • ● Any dependency on the CRM vendor had to stay out of the app: the salon wanted the freedom to switch.
Zeus Barbershop app: Book, Home and Confirm your booking screens

The Solution

One codebase, one contract, one middleware

Livotov Labs rebuilt the product in Kotlin end to end: a Kotlin Multiplatform app with Compose Multiplatform UI on both platforms, and a Ktor middleware that owns the mobile API and hides the CRM behind ports.

Kotlin Multiplatform App

One shared codebase for iOS and Android on a custom design system (Composables UI + Lucide, no Material). VISCE architecture on OSKit, Koin, Ktor client. Bulgarian, English and Russian.

CRM-Independent Middleware

A Ktor backend on PostgreSQL that exposes a frozen 26-endpoint contract to the app and speaks to the CRM through eight ports. The vendor adapter is the only module that knows the vendor.

Booking Engine

Provider-computed free slots with SWR caching and coalescing, idempotent writes, guest booking, reschedule and cancel, and a delta-poll sync of changes made at the front desk.

Loyalty, Reviews, Identity

Cashback balance and tiers read from the salon’s programme, a 14-day review window per visit, passwordless phone sign-in with Ed25519 sessions and per-device rate limits.

Favourites, One Tap Away

A favourite barber and up to three services put that barber’s next free slots on the home screen; one tap books. Together with “Book again” it is the shortest path back to the chair.

Live Push, Arranged Home

Every change made at the desk reaches the client’s phone within seconds. The five home blocks can be shown, hidden and reordered per client. Bulgarian, English and Russian; light and dark; instant start from a local cache.

For the business

What the owner gets

The engineering is the means. These are the outcomes the salon runs on.

Less desk traffic

Clients book real free slots themselves, move or cancel within the salon’s rules, and call only when the app says it is too late to change.

Nothing phoned through

A change entered in the CRM is pushed to the client’s phone; a booking made in the app appears in the CRM. One source of truth, no double entry.

Regulars on a shorter leash

A favourite barber’s next free times on the home screen and “Book again” on the last visit turn a client who “should book soon” into a booked one.

Loyalty people can see

Balance, tier and progress on the home screen, read from the salon’s own programme. The cashback card finally earns its place.

No vendor lock-in

The CRM sits behind a middleware. If the salon outgrows it, the app does not know — zero app releases for a CRM switch.

Two salons today, more tomorrow

Both Varna branches in one app with their own hours, teams and prices. Adding a branch is configuration.

The Product

From home screen to confirmed visit

Home: cashback card and last visit
Home: cashback card and last visit
Book: by service or by barber
Book: by service or by barber
Services with duration and price
Services with duration and price
Choose a barber: grade, rating, reviews
Choose a barber: grade, rating, reviews
Date and time: live free slots
Date and time: live free slots
Confirm: slide to book
Confirm: slide to book
About the salon
About the salon
Extra booking via the front desk
Extra booking via the front desk

The Results

Shipped. Measured.

1
Codebase for iOS & Android
26
API endpoints, contract-frozen
200+
Automated tests in CI
0
App releases needed for a CRM switch

Your business?

The same blueprint fits any business with a schedule and regulars.

Barbershops, beauty salons, dental practices, gyms, car services, pet groomers — anywhere clients book a person or a chair and come back. Swap the vocabulary and the CRM adapter; the app, the middleware and the loyalty stay.

Barbershops & salonsBeauty & nailsDental & medical practicesFitness & personal trainingSpa & massageCar service & detailingPet groomingRepair shops

What you bring, what we deliver

  • ●You bring your brand, the booking system you already use (or none), and one person who knows how the desk works.
  • ●We deliver the design, a native app in both stores from one Kotlin codebase, the middleware, monitoring, and the launch.
  • ●Sized for a small business. Zeus is two salons in Varna. The project was scoped and priced for that — not for an enterprise roadmap.

If your clients still book by phone, this is the page to send us from.

Launch news ·
Zeus Barbershop launches its second-generation app and middleware

The second generation went live on 23 September 2026. Read the launch announcement →

© 2026 Livotov Labs • Masterfully Engineered in Europe, Bulgaria