Skip to main
Omar Nagy.

Paid pilotcase 01 / 08

Harmonia Salon POS.

An Arabic-first operating system for a luxury salon: POS, smart queue, memberships, payroll, and a net-profit dashboard, built to run offline on salon tablets.

Next.js 15Supabase eu-central-1TypeScriptPWARTL

Harmonia, a men’s luxury salon: Arabic-first landing page, gold HARMONIA wordmark on near-black.

01 · a sale in fifteen seconds

Tap the stylist, take the cash.

The salon ran on a clipboard, a WhatsApp thread, and the owner’s memory. Harmonia is one Arabic-first sale: every line attributed to who performed it, the commission rate snapshotted at that moment, a branded receipt that greets the guest by name.

  1. 01Tap the stylistEvery line attributed to who performed it.
  2. 02Tap the serviceA categorized, searchable service grid.
  3. 03Take the cashThe stylist’s commission rate snapshotted at the moment of sale.
  4. 04DoneA black-and-gold receipt greets the guest by name; the owner gets a silent Telegram ping.

02 · three doors, one queue

Walk-in, phone, online: one line.

Appointments lived in WhatsApp; walk-ins lived on a clipboard. Two stylists, one chair, one unhappy guest. Every channel now flows into a single queue with live wait estimates, auto-balanced to the least-busy stylist.

Walk-in
Phone
Online
the mergeOne live queueLive wait estimates; guests check their own status from a link.
The chairAuto-balanced to the least-busy stylist.

03 · the membership at the till

A retention engine, wired into the cash.

Yearly tiers (Silver, Gold, Diamond) with entitlements the POS recognises and redeems automatically at checkout: a haircut credit covers a haircut or a beard trim, priced and managed by the owner. The membership is not a loyalty card stapled on; it settles inside the sale.

Harmonia point of sale: ringing a sale on a salon tablet, a membership credit auto-redeeming at checkout.

04 · the owner’s home screen

Net profit, the biggest number on the page.

Commission used to be a Sunday-morning argument, litigated from memory. Now the owner opens to net profit first, with a full P&L, commission settlement, and a daily cash-close with tolerance bands one tap away.

net profitleads the home screen, not revenue

L1Net profit
L2Today’s sales
L3Queue now
L4Payroll due
L5Memberships active

05 · fourteen days, then compounded

A running system first, the platform after.

The first version that took real money shipped in 14 days, then compounded across 19 waves into the full salon platform: HR and QR attendance, home-service visits, payroll that drafts itself. Built single-tenant on purpose, so his takings and client list never sit in a pool with strangers.

14 daysto a system taking money

First running system · POS + queue + receipt14 days
Memberships · payroll · audit · cash-close+ waves
HR · QR attendance · home-service visits+ waves
Full salon platform · ~50 routes19 waves

How those first 14 days fit, day by day, is in the 14-day ship log.

06 · built so the owner can walk away

The guarantees under the cash.

With no system, the owner’s presence was the audit log. Now he can leave at two in the afternoon and the cash still adds up at close, because every state-changing action is on the record and the money paths are locked to the server.

L1One permission file
L2Append-only audit log
L3Cash-close as a state machine
L4Offline-tolerant
L5Server-locked writes

the receipts

14d
to a running system
19
waves iterated since
~50
routes shipped
PWA
install + offline