Beauty · App Starter
Everything a salon runs on — stylist calendars, client history, retail checkout, commission splits — generated into code you own.
Salon software has quietly become a toll booth: booking fees per appointment, card margins, upsells between you and your own client list. This starter generates the whole front desk and back office — calendars, client records, product sales, and the commission math — as an app your salon owns outright.
01 · Data model
A salon's real asset is what it knows: who sits in which chair, what formula went on their hair last visit, and what everyone earned on Saturday. Seven tables hold all of it — and they're yours, not a platform's.
| table | what it holds |
|---|---|
stylists | Your chairs — each stylist's services, working pattern, commission rate, and whether they're employed or renting the chair. |
services | The menu — cut, color, treatment, with duration, price, and processing time that the calendar respects when booking. |
appointments | Bookings linking client, stylist, and services, from request through confirmed, arrived, completed, or no-show. |
clients | Your book — contact details, visit history, color formulas, allergies and patch-test dates, and who they always ask for. |
products | Retail stock at the front desk — shampoo, treatment lines — with cost, price, and on-hand counts. |
product_sales | Retail sold at checkout, tied to the client and the recommending stylist so retail commission credits the right chair. |
commission_entries | Per-stylist earnings per service and sale — rate applied, tip attached — the rows payday is computed from. |
02 · Screens
Each chair runs its own column: bookings respect service durations, color processing gaps, and each stylist's working pattern. Double-booking a chair becomes impossible rather than embarrassing, and the day's shape is readable from the front desk at a glance.
Every visit logs services, the stylist, the exact color formula, and notes — so 'the usual' means the same thing after a stylist's holiday, and a patch-test date is a fact on file rather than a memory. Regulars are regulars because someone remembers; this remembers.
Ring up products with the service at one checkout, tied to the client and the recommending stylist. Retail margin is the easiest money in a salon to lose track of — here it lands in the same ledger as services, credited to the right chair.
Completed appointments and product sales generate commission entries at each stylist's rate, with tips recorded per appointment. The week closes as a per-stylist statement everyone can check — ending the Saturday-night calculator ritual for good.
03 · Process
Tell Dual7 how your floor works — chairs, service menu, commission arrangements, employed versus chair-rental stylists. The starter builds the system around your answers.
Refine conversationally: add a processing-time gap to color services, a new-client patch-test rule, a different retail commission rate. Every change is readable code, live in minutes.
Deploy on your own infrastructure with approval gates and an audit trail. Your client book — the most valuable thing a salon owns — lives in your database, not a platform's marketing engine.
04 · Fit
Marketplace booking platforms charge for appointments your own regulars would have made anyway, and some market your clients to nearby competitors. Owning the system means the booking fee is zero forever and the client list works only for you.
Five stylists on three different commission arrangements plus tips plus retail is a spreadsheet that ruins someone's Sunday. Commission entries computed at checkout turn payday into a report you print, not a negotiation.
Renters are businesses inside your business: their own clients, their own takings, your chair. A system that keeps each renter's appointments, sales, and settlement separate — while the front desk sees one calendar — fits how the industry actually works.
Where services involve courses, contraindications, and consent forms, the client record carries real responsibility. Because the schema is yours, treatment notes, course tracking, and consent capture become fields — not workarounds in a notes box.
05 · Yours
Salons differ chair to chair, and the differences fit in your code. Add online self-booking with deposit-taking to kill no-shows, SMS reminders the day before, a loyalty points balance on the client record, or packages and course tracking for treatment series. In Vibe mode each is a conversational change you can watch land in the codebase.
The commission engine is deliberately open: employed stylists on tiered rates, renters on chair fees with their takings passed through, retail commission split differently from services, an assistant's cut on color work — whatever your arrangements are, they're rules you can read. And since the output is a standard full-stack app, your bookkeeper's export is a query away.
Salon platforms monetize the space between you and your clients: booking fees, payment margins, and marketplace listings that surface your regulars to the salon down the street. This starter closes that space. The booking flow, the client book, and the checkout are your own app on your own infrastructure — no per-appointment tax, and nobody marketing to your book but you.
What you take on is running a system instead of renting one. The governed pipeline keeps that honest — changes go through approval gates with an audit trail — and when the salon grows into a second location, regeneration reshapes the structure without a migration weekend.
The working core: per-stylist calendars with duration- and processing-aware booking, client records with visit history and color formulas, retail checkout tied to stylists, and automatic tip and commission entries per appointment and sale — generated as code you own.
The starter ships the appointment engine and front-desk booking; a public self-booking page is a natural Vibe-mode addition, including deposits to protect against no-shows. Either way there's no per-booking fee — it's your app.
Each completed appointment and product sale writes a commission entry at that stylist's rate, with tips recorded alongside. Different rates for services versus retail, tiers, and chair-rental arrangements are all rules in your code, and the weekly statement comes straight from the entries.
Yes — stylists carry an arrangement type, so renters keep separate takings and settle chair fees while employees run on commission. The front desk still sees one calendar; the money stays cleanly divided underneath.
Both are part of the client record: formulas log per visit so any stylist can reproduce last time's color, and patch-test dates are stored fields you can enforce — the system can require a valid test before a color service books.
Checkout records the sale and the split; the card machine is whichever processor you choose, integrated against your own code. That separation is the point — your software vendor and your payment margin stop being the same negotiation.
Dual7 App Starters
Everything a salon runs on — stylist calendars, client history, retail checkout, commission splits — generated into code you own. Describe your version to start — the output is a project you own.