Mobile2025Shipped
Rooh Al-Jouf
A digital guide to the Al-Jouf region and everything in it.

A bilingual tourism guide for Al-Jouf in Saudi Arabia: heritage and tourist sites, live events and festivals, a directory of local restaurants and cafés, and the historical and cultural background behind them. Built for both a first-time visitor and a resident.
What it is, and why it exists
Regional tourism apps usually fail in one of two ways: they are a brochure that never changes, or they are a map with pins and no reason to care about any of them. Al-Jouf has genuine depth in heritage sites, seasonal festivals and a food scene, and the client wanted all of it in one place.
The app covers sites, events, and places to eat, each with the historical and cultural context that makes a visit worth making. It is fully bilingual, which for a Saudi tourism product is not a nice-to-have.
Challenges
Bilingual means the layout mirrors, not just the words
the problem
Switching to Arabic flips the entire interface: navigation direction, icon orientation, list alignment, back gestures. Translating strings alone produces an app that reads Arabic but behaves English.
what I did
Direction is a property of the whole tree rather than a per-screen fix, so layout, navigation and gestures all mirror together. Anything directional is expressed in start/end terms instead of left/right.
Events go stale faster than releases ship
the problem
A festival listing that is a week out of date is worse than no listing. Store review cycles are far slower than the pace at which a seasonal events calendar changes.
what I did
Events, sites and venues are all remote content the client edits directly. Shipping a build is never on the critical path for keeping the app current.
Heavy imagery on a tourist's connection
the problem
A guide is mostly photographs, and it is opened by people on roaming data at a heritage site with one bar of signal, the worst possible conditions for the app's heaviest content.
what I did
Images are served at the size they are displayed and cached on disk after first view, so browsing back through places already seen costs nothing.
Results
- Shipped on both the App Store and Google Play for a Saudi client.
- Fully bilingual with a properly mirrored right-to-left layout.
- Content managed by the client without app releases.
A few screens





