Mawid — Booking & Front Desk for Gulf Clinics
An Arabic-first booking platform for clinics and salons: online booking, WhatsApp reminders, a live schedule and a bilingual front-desk assistant.
Built for: Clinics, salons and studios in the Gulf, shown through a demo dental clinic in Dubai. Patients book from their phone in Arabic or English; the owner and the front desk run the day from one screen.
Opens in a new tab — my own product, running a demo clinic you can book into and manage.
Real screenshot of the live product — click it to open the demo clinic.




The problem
Small clinics in the Gulf still take most bookings by phone and WhatsApp and write them in a paper book or a shared spreadsheet. Two receptionists can give the same chair to two patients, a missed visit costs the slot because nobody sent a reminder, and nobody can say how full next week is without counting by hand. Most booking tools are built in English first and treat Arabic as a translation.
The solution
Every business gets a public booking page, Arabic and right-to-left by default with English one tap away, and a dashboard for the front desk. Patients pick a service, a person or "first available", and a real free time; the time is held for a few minutes while they type, so nobody else can take it. They get a WhatsApp confirmation, a calendar file and a private link to move or cancel. The front desk sees the whole team side by side on a live timeline, books phone and walk-in visits through the same checks, and marks visits attended or missed in one tap. Reminders go out the day before and two hours before. Double bookings are stopped by the database itself, not only by the app.
What it does
Arabic-first booking page
Right-to-left by default, English one tap away. A day strip shows how booked each day is, and the chosen time is held with a visible countdown while the patient fills in their details.
No double bookings, by design
A Postgres exclusion constraint covers each person's occupied time, cleaning gaps included. A test fires five holds at the same slot at once and exactly one wins.
Live front-desk schedule
Every team member side by side on one timeline with a line for the current time, day totals, who is up next, and visits waiting to be checked out.
Reminders that send once
WhatsApp (and email) reminders the day before and two hours before. Each one is claimed in the database before it goes out, so two overlapping runs can never message a patient twice.
Bilingual front-desk assistant
Ask in English or Arabic, like "مين عنده مواعيد بكرة الصبح؟", and get answers from the live schedule. It books, moves or cancels only after a confirm card. Rule-based and tested, no AI model.
Insights and exports
Appointments per day, busiest hours, no-show rate, where bookings came from and how full each person's week was. Bookings export to CSV.
Team, services and rules
Bilingual services with prices and cleaning gaps, shifts and breaks, time off, booking rules, and the booking link with a QR code to print.
Why it mattersto the business
- Patients book themselves at any hour, in their own language, so the phone rings less.
- A chair can never go to two people, even when two receptionists click at the same moment.
- Reminders go out on their own, so fewer slots are lost to people who forgot.
- The owner sees takings, no-shows and how full each person's week is without counting by hand.
Technology
About this project: My own product, designed and built end to end: product design, database, booking engine, reminders, the assistant, tests and deployment. It is not client work. The live site runs a demo dental clinic on generated data that resets every night, so anyone can book as a patient and then run the front desk. Photography and the hero film were generated with Higgsfield. The code is public at github.com/darkxgs/mawid.
Want something like thisfor your business?
This is my own product, live with a demo clinic you can try. If your business needs booking like this, I can set it up for you or build the version that fits how you work.
