A practical React Native (Expo) demo focused on building fast, observable app startups. Before the first screen renders, it manages the critical boot sequence: version gating, maintenance mode, security checks, and splash screen timing. Everything is hooked up to Sentry for full observability, capturing detailed startup traces and navigation telemetry. It also includes a side-by-side look at eager versus lazy loading to show the real-world impact of heavy modules on boot time.
- Node.js and npm
- Xcode (for iOS builds)
- Android Studio with an Android SDK (for Android builds)
-
Copy
.env.exampleto.envand fill in the values:cp .env.example .env
Variable Purpose SENTRY_ORGYour Sentry organization slug. Required by the Expo plugin during the build step. SENTRY_PROJECTYour Sentry project slug. Pairs with your org to route data to the right bucket. EXPO_PUBLIC_SENTRY_DSNYour client key. Baked directly into the JS bundle to power live telemetry and error tracking. -
Install the dependencies:
npm install
-
Generate the native
android/iosprojects:npm run prebuild
-
Start the development server:
npm run start
-
Build and run iOS and Android development builds:
npm run ios # or npm run android
- Run
npm run biome:checkto catch syntax and formatting issues. - Use
npm run biome:fixto format the codebase and resolve auto-fixable errors. npm run ts:checkruns a strict type check across the project.- Run
npm testto execute the Jest test suite.