Mobile App
📁 Project Structure
The Unifyed Mobile App follows a clean separation of core framework and tenant-specific implementation using Git submodules. This modular architecture ensures scalability, reusability, and independent lifecycle management of each layer.
🧱 Folder Layout
Here's the typical folder structure:
.
├── __tests__/
├── android/
├── ios/
├── app.json
├── App.tsx
├── AppDelegate.m
├── babel.config.js
├── index.js
├── Info.plist
├── jest.config.js
├── metro.config.js
├── node_modules/
├── package.json
├── package-lock.json
├── react-native.config.js
├── README.md
├── settings.json
├── tsconfig.json
├── Gemfile
├── GENERATE_RELEASE_APK_IPA.md
└── src/ <-- Core Framework (Git Submodule)
Tenant Layer
- Root Project:
unifyed-mobile-engagex-qa - Handles branding, screen overrides, tenant configs, environment setup, and tenant-specific features.
🧩 Submodule Architecture
We use Git submodules to include a centralized framework codebase.
- Path:
src/ - Repository:
unifyedx-mobile-framework - Contains reusable modules: auth, networking, storage, UI components, etc.
- Versioned and reused across all tenants.
🛠️ Clone the Project
git clone --recurse-submodules https://gitlab.com/Unifyed/Mobile-Builds/reactnative/engagex-qa/unifyed-mobile-engagex-qa.git
cd unifyed-mobile-engagex-qa
For deeper insights, refer to the Developer Guide or explore the code in the GitLab Repository.
Start exploring by clicking on an application in the sidebar!