Aegis AI is a mobile app that enables residents to report street infrastructure issues (potholes, broken streetlights, damaged sidewalks) using photos, AI classification, and geolocation, with a real-time city dashboard for municipal workers.
- Mobile App: React Native (iOS/Android)
- Backend API: Python FastAPI
- AI/CV: PyTorch/TensorFlow for image classification
- Web Dashboard: React + Mapbox/Leaflet
- Database: PostgreSQL + PostGIS (geospatial)
- Cloud: AWS/GCP with Docker, S3/Cloud Storage for images
aegis-ai/
├── mobile/ # React Native app
├── backend/ # FastAPI backend
│ ├── app/
│ │ ├── api/ # API routes
│ │ ├── models/ # DB models
│ │ ├── services/ # Business logic
│ │ └── ml/ # ML inference
│ ├── Dockerfile
│ └── requirements.txt
├── web-dashboard/ # React dashboard
├── ml-model/ # Training scripts
│ ├── train.py
│ ├── data/
│ └── models/
├── docker-compose.yml
├── .gitignore
└── README.md
- Docker and Docker Compose
- Node.js 18+
- Python 3.9+
- Clone the repository
- Start the database:
docker-compose up -d postgres - Setup backend:
cd backend && pip install -r requirements.txt - Setup mobile app:
cd mobile && npm install - Setup web dashboard:
cd web-dashboard && npm install
- Start backend:
cd backend && uvicorn app.main:app --reload - Start web dashboard:
cd web-dashboard && npm start - Start mobile app:
cd mobile && npx react-native run-android(or run-ios)
Once the backend is running, visit http://localhost:8000/docs for interactive API documentation.
Please read our contributing guidelines before submitting pull requests.
This project is licensed under the MIT License.