Not a brochure site. An application that takes the bookings, holds the diary, issues the paperwork and tells you what you earned — in your language, on your customers' phones.
- apps in production
- 0apps in production
- languages, RTL included
- 0languages, RTL included
- server to rent
- 0server to rent
What's your trade?
Pick one, and the rest of this page talks about nothing but you.
Switch trade whenever you like — everything recomposes.
Not built yet, but the foundation is the same. Tell us and your trade moves to the front.
Live
Barbershop
The client books tonight's cut from their phone. You cut.
A trilingual booking app for a barbershop, in a dark leather-and-brass theme, that works out genuinely free slots from each barber's hours and the length of each service. A 20-minute beard trim and a 90-minute groom's package do not offer the same times. The client leaves their preferences — low fade, short beard — and confirms on WhatsApp.
- languages, Arabic RTL included
- 3languages, Arabic RTL included
- notice is enough to book
- 1hnotice is enough to book
- chairs sold twice
- 0chairs sold twice
Afternoon
Evening
Real screens from the delivered application.
Slots computed, never stored
The barber's hours, minus bookings taken, minus closures — Eid, a public holiday, a barber away. Recomputed on every view and re-checked on confirm: two clients on the same half hour, one gets through.
Duration comes from the service
Haircut 30 min, fade 45, groom package 90: the grid only offers times where the service fits before the next client. The price is frozen at booking.
One chair or the whole team
The same software serves the solo barber and the five-chair salon. The client picks their barber, or lets the shop assign the first one free.
Their preferences arrive before they do
“Low fade, short beard, part on the left”: written at booking, read by the barber before picking up the clippers. No more re-explaining at every visit.
Promo codes, computed server-side
A percentage or a fixed amount, above a given price, in a limited number, until a date. The browser sends a code, never an amount: the discount is decided from the stored rule.
What each chair brings in
Revenue booked, revenue expected, average ticket, no-show rate, the most profitable services and barbers. Only cuts that happened count: a no-show did not pay.
- 1
They pick a date
The list keeps only the services genuinely available that day.
- 2
They pick a service
Duration and price shown. The duration decides the slot length.
- 3
They pick their time
A 14-day strip, full days struck through, times split morning / afternoon. If it is all full, a button offers the next free slot.
- 4
They leave their details
Name and phone required; email, preferences and “first visit” optional.
- 5
They confirm on WhatsApp
An RDV-XXXXXX code, emails to client and shop, then a button that opens the chat with the message already written. No online payment: they pay at the shop.
Diary
Day view, one column per barber, bookings placed on the hour.
Bookings
Filterable list, quick actions ✓ / ✕ / Completed / No-show, new clients flagged.
Services
Menu: haircut, beard, shave, grooming, kids, packages. Duration, price, photos, hide / show.
Barbers
Profiles, photo, diary colour, active / inactive.
Opening hours
A template week, several ranges per day, copied to other barbers. A lunch break is the absence of a range, not a checkbox.
Statistics
Revenue booked and expected, average ticket, no-show rate, most profitable services and barbers.
modBarbersMultiple barbersmodBarberChoiceBarber choicemodPricesPublic pricesmodReceiptsPrintable receiptsmodDiscountsPromo codesmodRevenueStatisticsmodEmailsAutomatic emails
This is what you get.
Real screens from software in production, with invented data. Nothing here was redrawn for this page.

A build price, then a subscription.
The first amount covers design and launch. The second covers hosting, backups, fixes and support. Nothing else gets added.
- Public site + back-office, on your own domain
- Trilingual French / Arabic / English, Arabic RTL included
- Built to your identity: logo, colours, wording
- WhatsApp confirmation, message pre-written
- Cloudflare hosting, HTTPS certificate and backups
- Handover: one training session on delivery
You picked a trade — here is the plan that answers it.
Essential
One independent, one activity, one diary.
2 900MAD
on delivery
+149MAD · per month
1 490 MAD or per year, two months free
Pro as soon as there is more than one chair.
- Online booking and service catalogue
- Opening hours, closures and holidays
- Automatic emails to the customer and to you
- Full back-office: diary, catalogue, bookings
Pro
A team, paperwork to issue, numbers to follow.
4 900MAD
on delivery
+249MAD · per month
2 490 MAD or per year, two months free
- Everything in Essential, plus:
- Several staff members, one diary column each
- Printable documents: invoice, contract, receipt
- Revenue, average basket and no-show rate
- Promo codes and blackout periods
Bespoke
Several locations, or a need nothing off-the-shelf covers.
On quote
Quoted after a first conversation.
- Everything in Pro, plus:
- Features written for your trade alone
- Several branches under one back-office
- Connection to the tools you already use
- Priority support and a planned roadmap
Prices in dirhams, excluding tax. The domain name (~250 MAD/year) is billed at cost or stays in your name. The subscription is paid monthly or yearly and stops when you decide: the app and your data stay exportable.
Compliant with law 09-08 on delivery day, not six months later.
Collecting a name and a phone number puts your business under law 09-08. With us, the work is done before delivery.
Consent the server checks
The box is never pre-ticked, and the server refuses the booking without it — a box the server ignores is decoration. The date and the exact wording shown are recorded on the row, so you can say later what that particular person agreed to.
The notice where the typing happens, in three languages
Article 5 wants the person informed before they hand anything over. So the text sits above the button, not in a footer, and the full page exists in French, Arabic and English. It carries your business name, address and ICE, read from your settings — never a template's.
Your data stays in Europe
The CNDP recognises the European Union as offering adequate protection, and that is where all our databases are hosted. Because a database's location is fixed when it is created and cannot be changed afterwards, it is a decision to take at the start — not when an inspection raises it.
A session, not a password lying around
Signing in issues a random token that expires by itself and that signing out revokes on the server. Your password never leaves the form, and nothing keeps a readable copy of it — not for you, not for us.
Erase a person without breaking the accounts
A customer asks for their data to be deleted: one button clears their name, telephone and email across every visit. The dates and amounts stay, because the commercial code requires ten years of accounting records. Your figures keep adding up.
The CNDP file, pre-filled
Purposes, data categories, recipients, transfers, retention periods, security measures: every section of the form is written from what your application actually does. You read it over, fill in your identity, and file. We also tell you which of the two regimes applies to you — and for two trades out of four it is prior authorisation, to be obtained before you open.
The filing stays yours: the law names the data controller, and that is your business, not your supplier. What we guarantee is that the application does what the file describes, and that you do not have to write that file yourself. This page is not legal advice.
Four steps, no surprises.
- 01
We listen to your day
An hour understanding how you actually work: who calls, what gets written on paper, what wastes your time. That is the spec.
- 02
We bend the foundation
Bookings, diary, documents and stats already exist. We bend them to your trade and your identity — your colours, your logo, your words.
- 03
You try it for real
A live address, with your real data. You use it for a week, tell us what is off, we fix it before launch.
- 04
We stay behind it
Launch on your domain, then hosting, backups, fixes and small changes. You call, we answer.
A studio that ships products, not mockups.
A Moroccan studio that designs business apps, then runs them with you.
Ask3lach Dev designs and runs business software for independents and small companies in Morocco. Every project starts from the same proven foundation, then bends to one specific trade. That is how we ship fast without shipping generic.
Trilingual, RTL included
French, Arabic and English in one build. Arabic is not a translation laid on top: the whole interface flips, calendars and forms included.
Near-zero hosting
Everything runs on Cloudflare's network, close to your customers. Every one of our production apps fits inside the free tier: no server to rent, no bill that creeps up.
A back-office, not a spreadsheet
Every app ships with its own admin: diary, catalogue, opening hours, printable documents and revenue. You do not need us to run it day to day.
Modules, not forks
Features unlock per module, from a panel only the developer knows about. Your plan changes with no redeploy, and the limits are enforced server-side — not just greyed out on screen.
- Next.js 16
- React 19
- TypeScript
- Tailwind CSS 4
- Cloudflare Workers
- Cloudflare D1
- Cloudflare R2
- Drizzle ORM
- OpenNext
- Resend
- Playwright
The questions we get asked
How much does an app for a barbershop cost in Morocco?
2 900 dh on delivery, then 149 dh a month. The subscription covers hosting, backups, fixes and support; nothing else gets added.
Is hosting an extra cost?
No. The app runs on Cloudflare's network and fits inside the free tier: no server to rent, no bill that creeps up. The monthly subscription covers hosting, the HTTPS certificate and backups. Only the domain name is extra, around 250 dh a year, billed at cost or kept in your name.
Does the app work in Arabic?
Yes, and not as a translation laid on top. French, Arabic and English ship in the same build, and the whole interface flips in Arabic — calendars, forms and documents included. Your customers pick their own language; your back office stays in French.
What happens if I stop the subscription?
It stops when you decide, with no minimum term. The app and your data stay exportable, and the domain name can be in your own name from day one. You lose neither your customer file nor your address.
Is it compliant with law 09-08 on personal data?
Yes, on delivery day. The consent box is never pre-ticked and the server refuses a booking without it; the notice sits above the button, in three languages, in your business's name; the database is hosted in the European Union, which the CNDP recognises as adequate; and one button erases a customer's personal data without breaking your accounts. The CNDP declaration file is handed over pre-filled, section by section.
Tell us what you do.
Describe your trade in two lines. We answer with what the app would do for you, a timeline and a price — no sales meeting.