Project Structure ​
The engineer app follows a feature-based structure organized by functionality rather than technical layer.
Root Directory ​
├── .circleci/ # CircleCI configuration
├── .expo/ # Expo configuration and cache
├── .github/ # GitHub workflows and templates
├── .rnstorybook/ # React Native Storybook configuration and stories
├── assets/ # Static assets (images, fonts, icons)
├── bin/ # Build and utility scripts
├── build-assets/ # Assets for app builds
├── config/ # App configuration files
├── config-plugins/ # Custom Expo config plugins
├── documentation/ # VitePress documentation site
├── e2eAppium/ # End-to-end tests (Appium)
├── eas/ # EAS Build configuration
├── src/ # Application source code
├── .eslintrc.js # ESLint configuration
├── .prettierrc # Prettier configuration
├── app.config.ts # Expo configuration (dynamic)
├── babel.config.js # Babel configuration
├── eas.json # EAS Build profiles
├── env-config.json # Environment variables
├── index.ts # App entry point
├── jest.config.js # Jest testing configuration
├── metro.config.js # Metro bundler configuration
├── package.json # Dependencies and scripts
└── tsconfig.json # TypeScript configurationSource Directory (src/) ​
src/
├── app/ # Expo Router file-based routes
├── components/ # Feature-specific UI components
├── constants/ # Application constants
├── contexts/ # React contexts
├── design-system/ # Reusable UI components with Unistyles
├── fixtures/ # Test fixtures and mock data
├── refs/ # React refs utilities
├── services/ # Redux store, API slices, domain services
├── types/ # TypeScript type definitions
├── utils/ # Domain-specific utilities
└── env.ts # Environment configurationFor import patterns, file naming conventions, code organization principles, and best practices, see Coding Standards.