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.
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.
1a · Challenges
Each problem got a card. Each fix got filed behind it.
1a1Bilingual means the layout mirrors, not just the words
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.
1a1aWhat 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.
1a2Events go stale faster than releases ship
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.
1a2aWhat 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.
1a3Heavy imagery on a tourist's connection
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.
1a3aWhat 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.
2 · 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.