S
Salon Booking Platform Build progress
Updated 23 July 2026
All four milestones built

The build is finished. Everything is being handed over.

You can open the app in your browser right now, book a real appointment, join a pending list and cancel, and you can book a customer in yourself from the panel. Both the iPhone and the Android versions are built, signed and ready to upload, and everything the two stores require of an app is done. What is left is opening the two developer accounts, which only you can do.

Open the handover page
Whole project
All four milestones built
1. Backend, database and the salon panel
2. The customer app
3. Booking and the pending list
4. Arabic, notifications, launch built, waiting on your accounts
0%
Complete
On track

Try it yourself

Both of these are live right now. The app link opens in your browser, so there is nothing to install.

The customer app

This is the app your customers use. Book an appointment, see it in your bookings, cancel it, and join a pending list for a day that is full.

Open the app

This browser version is for you to try without installing anything, so at the code step you can type any six digits. The real app on the phone sends the code by SMS.

The salon panel

What you use on a laptop. Change a price or an opening time here and the app shows it immediately.

Open the panel
Your loginin the handover folder

The password used to be printed on this page, back when there was nothing in the panel but sample data. There are real bookings in it now, so it has moved into the handover folder instead. Change it once you are in.

Milestone 3
Booking and the pending list
Delivered
Booking
  • Pick a day. Days you are closed cannot be chosen.
  • Pick a time, split into morning, afternoon and evening. A time only appears if the whole service fits in it, so a 45 minute service never lands in a 30 minute gap.
  • Confirm and done. The customer sees the service, the length, the price and the time before they commit.
  • My bookings. Upcoming and past, with the full detail of any one of them.
  • Cancel, with your rule enforced. You set how close to the appointment a customer may still cancel, and the app will not let them past it.
  • Two people can never take the same slot. If two customers tap confirm in the same second, one gets the booking and the other is told that time was just taken and to pick another.
  • Every time is your salon's clock. Worked out on the server, never taken from the customer's phone, so a customer travelling abroad still sees the correct hour.
The pending list, your idea
  • Join a list when the day is full. The customer picks the day and whether they want morning, afternoon or evening, and sees how many people are already waiting.
  • They can see their position and leave whenever they want.
  • A cancellation goes down the queue. The first person it fits gets fifteen minutes to take it, then it moves to the next.
  • Does not fit, does not lose their place. If the free time is too short for the service they wanted, they are skipped for that one slot and stay on the list for the next.
  • Late cancellation goes to everybody at once. If the free time is too close to its own start for a queue to be worth running, everyone on that list is told together and the first to book takes it. This is the case we added after you agreed it, and it is the one that actually fills the chair.
  • One cancellation can fill two chairs. If somebody waiting on Monday already holds a Wednesday booking and takes the Monday slot, their Wednesday time is released and Wednesday's list starts moving too.
  • You see the queue in the panel, with who is on it and in what order.
Milestone 4
Arabic, notifications, launch
Ready to hand over
Already done
  • Full Arabic, right to left. Not a translation sitting in an English layout. The whole screen mirrors, and the app opens in Arabic by default.
  • A notifications list in the app, with a count of what has not been read. It is kept on the server, so a customer who missed the alert still finds out what happened when they open the app.
  • Appointment reminders, one the day before and one two hours before, sent once each.
  • Settings, and the language is remembered. The customer picks it once and the app opens that way next time.
  • Signing in sticks. Close the app and open it again and the customer is still signed in.
  • The Android app project is set up and ready to be built for the store.
  • You can book a customer in yourself. Someone walks in or calls, and you add the appointment from the panel. They do not need the app. If they install it later with the same number, that booking is already sitting in it.
  • Your business details are yours to change. Instagram, Facebook, WhatsApp and your shop photo are all editable from the settings page, and the app picks them up straight away.
  • The iPhone version of the app is built too. Same code, same screens, so both stores get the same app rather than two that drift apart.
  • A customer can delete their account from inside the app. Apple rejects any app that cannot do this. Their upcoming appointments are cancelled and offered to whoever is waiting, and your past records stay intact.
  • A privacy policy, in Arabic and English, written for what this app actually does. Both stores ask for one before they will list anything. Read it here.
  • The app icon, at every size both stores ask for, and the signing keys that prove future updates come from the same app.
Waiting on you
  • Your two store accounts. Google Play and Apple both tie an app to the account that publishes it, so they have to be in the salon's name. This is the only part with waiting time in it, so start it first. The whole route is written out here.
  • Your real salon in place of the demo one. Name, logo, photo, contact details, the service list with times and prices, and your opening hours. You can put most of it in from the panel yourself.
  • One key from your Apple account, which is the last piece of iPhone notifications. Everything that decides what to send and when is built and running, and Android is already connected.
  • A testing pass on a real phone once your salon is loaded. Both stores let you install it privately first, and that is the moment to try it properly.
Milestone 2
The customer app
Delivered
Milestone 1
Backend, database, salon panel
Delivered
The salon panel
  • Dashboard. Today's appointments, who is coming next, and how many people are waiting on the pending list.
  • Appointments, by day, week or month. Move a booking to another time or cancel it. Cancelling is what frees the slot for the pending list.
  • Customers. Everyone who has booked, searchable by name or phone.
  • Services. Add, edit and remove services in English and Arabic, with a length and a price. The length is what blocks the calendar.
  • Opening hours. Set the week, mark days closed, and block out holidays.
  • Branding. Change the logo and the brand colour and watch a live preview of the app update as you type.
  • Pending list rules. The morning, afternoon and evening cut-offs, how long each person gets to take a free slot, and when to tell everyone at once instead.
Under the hood
  • One salon can never see another salon's data. This is enforced by the database itself, not by code that somebody has to remember to write. It is the single most important thing in the whole build.
  • Two people can never book the same slot. Even if they tap confirm in the same second, the database refuses the second one. An app level check cannot catch this.
  • Each salon has its own link. A QR code in the shop opens that salon directly, with its own logo and colour.
  • The whole database is built. Salons, customers, services, hours, holidays, bookings, the pending list and notifications.
  • Full API documentation, generated from the code, so it never goes out of date.

What I need from you

The app is running on sample data. This is the only thing holding up your real salon going in, and it is the last big piece before the store.

  • Salon name, logo, brand colour, and a photo of the shop
  • Phone number and address, plus WhatsApp, Instagram and Facebook if you want them in the app
  • The service list, in English and Arabic, with how long each one takes and what it costs
  • Opening and closing times for each day of the week
  • A Google Play and an Apple developer account, both in the salon's name. Start these first, because the waiting is in the account approval and not in the app. Here is the full route.
  • A support email address and the business name to publish under. Both go on the store listing and on the privacy policy.

What happens next

In this order.