01
Challenge
District is Zomato’s going-out super-app for India, bundling movie tickets, live events, dining reservations, shopping and activities into one place. The main delivery challenge was to give users a fast, trustworthy journey across discovery, listing, checkout, and post-purchase states, while keeping Discover, Movies, and Dine consistent across the complete journey. We framed the engagement around the smallest production-worthy flow first, then expanded the scope without weakening the underlying component and data model.
02
How we built it
We began by mapping the user journey and the boundaries of the AI: what context it receives, what it may return, and where deterministic application logic must stay in control. We then built Discover, Movies, and Dine as small end-to-end slices, connecting the interface to the data and model layers early so the team could test real responses instead of static mock-ups. Streaming and real-time states were treated as first-class UI states, including loading, partial output, retries, and recovery. The main implementation used React Native, Expo SDK 54, Expo Router, and TypeScript, with typed contracts keeping the JavaScript stack consistent across the product.
03
Delivery
The delivered scope brought Discover, Movies, Dine, and Events into one coherent cross-platform mobile release. Model output, product logic, and user feedback are separated clearly, which makes the AI easier to evaluate and evolve. For District, the practical result is a product that communicates its value quickly while giving the team a maintainable base for continued delivery in commerce & marketplaces.