A comprehensive React Native/Expo mobile application for ConstructAI, providing field operations, logistics management, safety monitoring, and procurement workflows on mobile devices.
- Multi-Platform Support: iOS, Android, and Web
- Offline-First Architecture: Full functionality without internet connectivity
- AI-Powered Workflows: Intelligent automation for logistics, safety, and procurement
- Real-time Synchronization: Seamless data sync with ConstructAI backend
- Advanced Testing: Comprehensive unit, integration, and E2E test suites
- Internationalization: Multi-language support with automated translation
- Framework: React Native 0.79.5 with Expo SDK 53
- Language: TypeScript
- State Management: Redux Toolkit
- Navigation: React Navigation v6
- Database: SQLite with custom sync layer
- Testing: Jest, React Testing Library, Detox (E2E)
- CI/CD: GitHub Actions with comprehensive pipeline
ConstructAI-mobile/
├── src/
│ ├── components/ # Reusable UI components
│ ├── screens/ # Screen components by feature
│ ├── services/ # API, database, and utility services
│ ├── store/ # Redux store configuration
│ ├── navigation/ # Navigation configuration
│ └── utils/ # Helper functions and utilities
├── assets/ # Images, fonts, and static assets
├── e2e/ # End-to-end tests
├── __tests__/ # Unit and integration tests
├── WebPreview/ # Web preview build
├── WorkingApp/ # Alternative app configurations
└── .github/workflows/ # CI/CD pipelines
- Node.js 18+
- npm or yarn
- Expo CLI
- iOS Simulator (macOS) or Android Studio (Android development)
-
Clone the repository:
git clone https://github.com/Construct-AI-primary/constructai-mobile.git cd constructai-mobile -
Install dependencies:
npm install
-
Start the development server:
npm start
-
Run on specific platform:
npm run ios # iOS Simulator npm run android # Android Emulator npm run web # Web browser
- Unit Tests:
npm test - Integration Tests:
npm run test:integration - E2E Tests:
npm run e2e - All Tests:
npm run test:all
- iOS:
npm run build:ios - Android:
npm run build:android - Web:
npm run build:web
- Customs clearance workflows
- Shipment tracking and monitoring
- Document management with OCR
- Real-time GPS tracking
- Incident reporting with voice commands
- Hazard identification with AI assistance
- Safety checklist automation
- Emergency response coordination
- Purchase order management
- Supplier evaluation workflows
- Contract digitization
- Approval process automation
- Asset tracking and maintenance
- Usage analytics and reporting
- Preventive maintenance scheduling
- Equipment lifecycle management
The app follows a modular architecture with:
- Clean Architecture: Separation of concerns with clear boundaries
- Feature-based Organization: Code organized by business features
- Offline-First: Optimistic updates with conflict resolution
- Microservices Communication: RESTful APIs with GraphQL support
- Security: End-to-end encryption and secure authentication
- Fork the repository
- Create a feature branch:
git checkout -b feature/your-feature - Make your changes and add tests
- Run the full test suite:
npm run test:all - Commit your changes:
git commit -am 'Add your feature' - Push to the branch:
git push origin feature/your-feature - Submit a pull request
The project uses GitHub Actions for continuous integration with:
- Automated testing on multiple Node.js versions
- iOS and Android build verification
- Bundle size analysis
- Security vulnerability scanning
- Performance regression testing
- iOS: App Store Connect with TestFlight beta distribution
- Android: Google Play Store with internal testing tracks
- Web: Vercel/Netlify with CDN optimization
For support and questions:
- Create an issue in this repository
- Contact the mobile development team
- Check the ConstructAI Documentation
This project is part of the ConstructAI ecosystem. See the main repository for licensing information.