This project includes:
- Expo mobile app for Android/iOS
- NestJS backend API
- Next.js admin dashboard
- MongoDB for primary data persistence
- Redis for cache and queues
- MinIO for object storage
- Docker Compose for local services
-
Install root app dependencies:
npm install
-
Install backend dependencies:
cd backend && npm install
-
Install admin dashboard dependencies:
cd admin && npm install
-
Start local services:
docker compose up -d
-
Start the backend:
cd backend && npm run start:dev
-
Start the admin dashboard:
cd admin && npm run dev
-
Start the Expo app:
npm start
- Copy
backend/.env.exampletobackend/.envand update values as needed. - The Expo app can use environment variables as needed later for secure config.
- The admin app can use its own local
.env.localfile for API URLs and secrets.
- Mobile: React Native + Expo
- Language: TypeScript
- Navigation: Expo Router
- State management: Zustand + TanStack Query
- Local storage: SQLite + SecureStore + FileSystem + Camera
- Backend: NestJS + MongoDB + Redis + BullMQ
- Object storage: MinIO / S3-compatible storage
- Web/admin: Next.js dashboard for operations and analytics