36 lines
1.3 KiB
Markdown
36 lines
1.3 KiB
Markdown
# Ushahidi
|
|
|
|
Ushahidi is a crisis mapping and crowdsourcing platform for collecting, visualising, and analysing reports from a community.
|
|
|
|
## Dependencies
|
|
|
|
- **MySQL** - Database for storing posts, surveys, and users
|
|
- **Redis** - Used for caching and background job queuing
|
|
|
|
## Configuration
|
|
|
|
Key settings in `config.yaml`:
|
|
|
|
- **domain** - Where the Ushahidi web client will be accessible
|
|
- **apiDomain** - Where the Ushahidi API is accessible (default: `ushahidi-api.{your-cloud-domain}`)
|
|
- **storage** - Persistent volume size (default: `2Gi`)
|
|
- **db.name** - Database name (default: `ushahidi`)
|
|
|
|
## First-Time Setup
|
|
|
|
1. Add and deploy the app:
|
|
```bash
|
|
wild app add ushahidi
|
|
wild app deploy ushahidi
|
|
```
|
|
|
|
2. Visit the client URL and complete the setup wizard to create your admin account and configure your deployment.
|
|
|
|
3. Start creating surveys and collecting reports from the public.
|
|
|
|
## Notes
|
|
|
|
- Ushahidi has two components: the **API** (Laravel) and the **Client** (Angular) — both are deployed together and served on separate domains
|
|
- The Laravel API has a slow startup (~2 minutes) due to framework initialization — the deployment uses extended liveness probe delays to prevent restart loops
|
|
- The `appKey` is auto-generated in `secrets.yaml` and used for Laravel encryption
|