Reference Apps

Use these as target shapes for future Expo work.

Tiny Smoke App

Purpose: prove the stack works before product complexity.

Required shape:

  • app/_layout.tsx with one Stack.
  • app/index.tsx home screen.
  • app/item/[id].tsx dynamic route.
  • One API mock or simple fetch module.
  • One component test.
  • One route test.
  • eas.json with development, preview, and production profiles.
  • Development build installed on at least one Android path.

Realistic Product App

Purpose: prove release readiness for a useful app.

Required shape:

  • Expo Router route groups and dynamic routes.
  • API layer under src/api/.
  • Query hooks under src/hooks/.
  • Client state under src/stores/ only for device-local state.
  • Reusable UI under src/components/.
  • App config with package name, bundle ID, icon, splash, scheme, permissions, and plugins.
  • EAS profiles for development, preview, production, and submit.
  • Jest tests, route tests, and built-app smoke notes.
  • OTA update strategy and rollback command.

Local Reference

_repos/peteretelej-TheOnlineKenyan/mobile-app/ is the current local realistic reference. It shows:

  • Expo SDK 54 and Expo Router 6.
  • main: "expo-router/entry".
  • app/ route tree with tabs, dynamic routes, not-found route, and root layout.
  • src/api/, src/hooks/, src/stores/, src/components/ architecture.
  • app.json with typed routes, app identity, permissions, plugins, and New Architecture enabled.
  • eas.json with development, preview, production, and Android submit profiles.
  • jest-expo and React Native Testing Library setup.

Treat it as a local pattern source, not as current Expo SDK authority.