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
Beauty salon
She books her treatment — or asks you to come to her.
A trilingual booking app for a beauty salon, in the salon's own colour. It works out genuinely free slots from each beautician's hours and the length of each treatment: a 20-minute facial wax and a four-hour bridal package do not offer the same times. And for the client who cannot come in, the salon goes to her — on its own timetable, with its own list of treatments, and the travel fee already in the total.
- languages, Arabic RTL included
- 3languages, Arabic RTL included
- address and position for an at-home treatment
- GPSaddress and position for an at-home treatment
- cabins booked twice
- 0cabins booked twice
Times offered
Real screens from the delivered application.
The salon travels, and knows it in advance
Each treatment says whether it can be done at home — a colouring needs a basin, a manicure does not. Home visits have their own timetable, because the client is at home in the evening and the salon is not open then. The booking arrives with the address, the GPS position and the travel fee already added to the total.
Slots computed, never stored
The beautician's hours, minus bookings taken, minus closures — Eid, a public holiday, a beautician on leave. Recomputed on every view and re-checked on confirm: two clients on the same hour, one gets through.
From a blow-dry to a bridal package
Hair, nails, waxing, facials, hammam and packages, each with its length and price, its photos and its status. The length decides the slot: twenty minutes of facial waxing and a four-hour bridal package do not fit in the same part of the day.
One cabin or the whole team
The same software serves the solo beautician and the five-cabin salon. The client picks her beautician, or lets the salon assign the first one free.
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 cabin brings in
Revenue booked, revenue expected, average ticket, no-show rate, the most profitable treatments. Only treatments that happened count: a no-show did not pay.
- 1
She picks a date
The list keeps only the treatments genuinely available that day.
- 2
At the salon, or at her place
If the salon travels, a button offers the home visit — with the treatments that can be done outside a cabin, and the evening hours the salon agrees to come.
- 3
She picks her 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
She leaves her details
Name and phone required; email, preferences and promo code optional. For a home visit the address and position are added, and the summary shows the price, the discount and the travel fee.
- 5
She confirms on WhatsApp
An RDV-XXXXXX code, emails to client and salon, then a button that opens the chat with the message already written. No online payment: she pays at the salon.
Diary
Day view, one column per beautician, bookings placed on the hour.
Bookings
List filterable by status, quick actions ✓ / ✕ / Completed / No-show, home visits flagged.
Treatments
Hair, nails, waxing, facials, hammam, packages. Duration, price, photos, doable at home or not, hide / show.
Beauticians
Profiles, photo, diary colour, active / inactive.
Opening hours
A template week, several ranges per day, a separate timetable for home visits, copied to the other beauticians. A lunch break is the absence of a range, not a checkbox.
Statistics
Revenue booked and expected, average ticket, no-show rate, most profitable treatments.
modHomeServiceAt-home servicemodBeauticiansMultiple beauticiansmodBeauticianChoiceBeautician 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.
3 400MAD
on delivery
+179MAD · per month
1 790 MAD or per year, two months free
Pro as soon as there is more than one beautician.
- 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.
5 400MAD
on delivery
+279MAD · per month
2 790 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 beauty salon cost in Morocco?
3 400 dh on delivery, then 179 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.