
- Our role
- Product, design and engineering — end to end
- Timeline
- 2025 — ongoing
- Platforms
- iOS · Android · Web · Admin Dashboard
- Year
- 2026
Overview
Roshtah began with a problem every clinic in the region shares: patients arrive early and wait without knowing how long, and clinics have no way to communicate progress. Phone bookings get lost, and no-shows are absorbed silently as lost revenue.
We designed and built the whole product — a Flutter mobile app for patients and doctors, a responsive React web app, a React admin console, a NestJS backend, and a Jitsi-based video consultation service. MajaraSoft owns and operates the platform.
A queue that has to be right
The live "turn" system is the product. If a patient is told they are third in line and that is wrong, the trust is gone. Advancing a turn had to be race-condition safe under concurrent doctor actions, survive reconnects, and stay correct when a booking is cancelled mid-queue.
Nine countries, three languages
Arabic (RTL), English (LTR) and Turkish, each with locale-aware numerals, dates, currency and per-country payment methods. Every screen has to work mirrored — not merely translated.
Two very different users in one app
Patients want to find a doctor and book in under a minute. Doctors need a clinical workspace: schedule, live queue, patient registry, medical records and earnings. Same codebase, two products.
Real-time turn system
A websocket gateway pushes queue state to every connected patient. The doctor-side controller uses optimistic UI with rollback so calling the next patient feels instant, while a booking state machine with row-level guards keeps the server authoritative.
Locale as an architecture decision
Country context flows through the backend via an AsyncLocalStorage-backed request scope, so seed data, pricing tiers, payment gateways and content all resolve per market without branching business logic at every call site.
SEO built as an engine, not an afterthought
Per-country landing pages, hreflang clusters and a prerenderer that freezes each route to static HTML — so search engines index real content instead of an empty SPA shell. The same engine now powers this site.
Offline-tolerant clinical workflows
Doctors lose signal mid-consultation. The medical records workspace keeps a per-doctor cache with a FIFO outbox, so notes written offline sync when the connection returns rather than being lost.
Live turn queue
Websocket-driven queue state. Patients watch their position move; doctors call, skip, recall and complete from one controller.
Tele-consultation
Jitsi-backed video and phone consultations, gated behind payment and fixed to 15-minute slots.
Electronic records
A per-patient medical profile with a health timeline, allergies and medications, plus a privacy layer separating what a doctor may see.
Clinic & branch management
Multi-doctor clinics, multi-clinic groups, branch rosters, seat invitations and per-branch scheduling.
AI clinical assistant
A docked assistant for doctors, plus an AI receptionist that answers calls, offers real slots and books them.
Payments & subscriptions
Per-country gateways with plan gating, doctor payout accounts, earnings reporting and dispute handling.
Ship to one market first
Syria was the proving ground. Every later market reused the same country-scoped architecture rather than a fork.
Design for the constraint
Intermittent connectivity is normal, so offline tolerance and optimistic UI are defaults rather than a late polish pass.
Make correctness observable
Booking and queue flows are covered by live integration suites, because a queue that is subtly wrong is worse than one that is visibly down.




A production platform live across Syria, Egypt, the Gulf states, Türkiye and the UK.
Real-time queue, tele-consultation, e-records, clinic and multi-branch management, and an AI clinical assistant shipped and in use.
A full booking, payment and subscription stack with per-country gateways.
An SEO engine covering per-country landing pages, structured data and a prerendered sitemap — the foundation reused for MajaraSoft.
Services
Have something similar in mind?
We build digital products from idea to launch. Tell us what you want to make.