React Native at Traveloka: Bridging Past and Future
Article Summary
Junius Ang from Traveloka reveals how a 4-person team manages 5 React Native apps plus a hybrid app using a single architectural pattern. Their secret? The District System.
Traveloka's multiplatform infrastructure lead shares a 2-year retrospective on their React Native implementation. The article covers their District System architecture, TypeScript migration, and the creation of Momentum Design Guidelines to unify UI across native, RN, and web platforms.
Key Takeaways
- District System: one core repository powers 5 RN apps with strict no product context rule
- Migrated 90% of codebase to TypeScript to win over skeptical native engineers
- Failed cross-platform experiment taught them: avoid SSR conflicts and excessive if-else blocks
- Momentum Design Guidelines unified components across Android, iOS, RN, and web platforms
- District-icon solves duplicate icons problem but tree-shaking still breaks on native
Critical Insight
A 4-person central team successfully manages 6 React Native projects by maximizing code reusability through strict architectural boundaries and design system standardization.