Engineers Clinic
IntermediateSoftware trackFP-CS-07

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.

Software & Web DevNext.js
5 Guided Steps34h Internship TierSubmit: GitHub repo with the booking app, translation files, seeded clinic data and a bilingual test checklist + READMEVerified CertificateAI Rubric Graded
Program Overview

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.

InternationalisationRight-to-left layoutLocalisation of dates and numbersNext.js routingAccessible formsState across language switches
What you submit

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

How it is graded
  • 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%

Learning Outcomes
Build one codebase that serves two languages
mirror a layout right-to-left correctly
format dates and numbers per language
keep user state across a language switch
Target Audience

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.