Bilingual Arabic and English clinic booking with right-to-left layout
Build a clinic appointment booking web app that works fully in Arabic and English, laying out right-to-left for Arabic without maintaining two separate sites.
Industry project · for Al Noor Clinics, a Dubai group of six clinics whose booking site is English-only and breaks when flipped to Arabic
Al Noor Clinics runs six clinics in Dubai. Most patients prefer Arabic, but the booking site is English-only, so staff book many appointments by phone instead. A contractor tried to add Arabic by copying the whole site and translating the text, and now the two versions drift apart: a slot added in English never appears in Arabic, and the Arabic version still reads left-to-right, so the layout looks broken.
The clinics handle about 2,500 bookings a month across general practice, dentistry and physiotherapy. They want one booking app that switches cleanly between Arabic and English, lays out right-to-left when Arabic is chosen, formats dates and numbers correctly for each language, and keeps all appointment data in one place so nothing drifts.
You will build the booking flow: choose a clinic and a service, pick a free slot, enter patient details and confirm. Every screen has to work in both languages from one codebase, with text pulled from translation files, not hard-coded. When Arabic is selected the whole layout mirrors, so navigation, form fields and the calendar flow right-to-left. Dates, times and numbers follow each language's conventions. You will seed clinics, services and slots so the flow is real. Done looks like a patient completing a booking end to end in Arabic with a correct right-to-left layout, the same flow working in English from the same code, and a language switch that never loses the patient's place. The clinics sign off when a native Arabic reader can book without anything looking foreign or reversed.
GitHub repo with the booking app, translation files, seeded clinic data and a bilingual test checklist + README
Stack: Next.js, An i18n library, CSS logical properties, A date and number formatting library
- One codebase, two languages30
Both languages are served from one codebase with text in translation files and no copied second site.
- Correct right-to-left30
Arabic mirrors the whole layout, so navigation, forms and the calendar flow right-to-left and nothing is reversed wrongly.
- Localised dates and numbers20
Dates, times and numbers follow each language's conventions throughout the booking flow.
- State across switches20
Switching language keeps the patient's place and their entered details and never resets the flow.
Pass 60% · Merit 75% · Distinction 90%
Engineering Students
Diploma, B.Tech, B.E., BCA, MCA, or M.Tech students seeking practical experience.
Aspiring Developers
Developers who want to build proof-of-work capstone projects for tech resumes.
Job Seekers
Graduates looking for AI-evaluated code review & verified industry credentials.