A car-sharing app that outgrew its build process
MyWheels is the Netherlands' leading car-sharing platform, built around a simple idea: share cars the way you'd share a Spotify playlist instead of owning one outright. The mission is fewer parked, unused cars and a smaller carbon footprint per trip, with vehicles stationed across neighborhoods so a shared car is never far away.
Why RNC CLI stopped working for the team
The pain wasn't abstract. Releases depended on a developer who knew Xcode's quirks well enough to route around them, and everyone else on the team ran into setup inconsistencies that slowed development and knocked release timing off track. Local build times were long enough that engineers described watching progress in slow motion.
That friction pushed the team to migrate their existing brownfield app to Expo rather than staying on RNC CLI. The move wasn't cosmetic. It changed how builds got made, how releases got shipped, and who on the team was able to contribute to the mobile app at all.
Replacing manual Xcode builds with EAS
Before adopting Expo Application Services (EAS), MyWheels built and uploaded iOS releases manually from Xcode, a process the team found error-prone and slow. They moved that work onto EAS and wired it into their existing GitLab CI setup: opening a pull request against a release/* branch now triggers an EAS build and submission automatically.
A weekly release cycle instead of a three-week one
The most concrete outcome MyWheels reports is a change in release cadence: a process that used to run on a roughly three-week cycle now ships weekly. "Our journey with Expo marked a significant shift in our release strategy, transforming it from a cumbersome 3-week cycle to a streamlined weekly release schedule," Galili said.
That cadence is now routine rather than heroic. The team cuts a release every Monday, generates a changelog from diffs, and opens a PR, with GitLab CI and EAS handling the build and submission from there.
Opening mobile development up to the rest of the team
Migrating to Expo also changed who could work on the app. Web developers who had never touched iOS or Android code started contributing to the mobile app without needing to learn Xcode or Android platform internals first. "Our transition from React Native RNC CLI to Expo wasn't merely a technical upgrade; it represented a shift from cumbersome processes to streamlined efficiency," Galili said.
Testing at scale on the same platform
MyWheels also built its testing setup on top of Expo, using Expo Router's testing APIs for navigation flows and running end-to-end tests nightly through EAS as part of CI/CD. As the app and its test suite grew, that pipeline scaled to running 184 test suites and 887 tests on a single project.
That volume is a sign of how much test infrastructure the team was able to build on the same tooling they used for releases, not a claim about test quality or coverage on its own.
“Our journey with Expo marked a significant shift in our release strategy, transforming it from a cumbersome 3-week cycle to a streamlined weekly release schedule.” (Steve Galili)
Sources
Migrating a complex brownfield React Native app to Expo: lessons from MyWheels (2024-07-23)
How to build a solid test harness for Expo apps (2025-03-06)
