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
-
Add and deploy the app:
wild app add ushahidi wild app deploy ushahidi -
Visit the client URL and complete the setup wizard to create your admin account and configure your deployment.
-
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
appKeyis auto-generated insecrets.yamland used for Laravel encryption