π‘οΈ Anonymous AI platform connecting abuse survivors to help in Cameroon
# SafeVoice Cameroon
Anonymous GBV & Abuse Reporting Platform | Cameroon Launch
## What it is
SafeVoice Cameroon is an anonymous, AI-powered platform where survivors and witnesses of gender-based violence, sexual assault, child abuse, and human trafficking can safely report incidents and be connected to verified support β NGOs, legal aid, hospitals, and police β without ever revealing their identity.
## Features
- **Anonymous reporting** β No accounts, no IP logging, no cookies
- **Quick Exit button** β One click to leave safely
- **Urgent flow** β Immediate danger skips contact options, shows emergency numbers first
- **Timing & location** β Optional: when (today/this week/past), region, town, quarter
- **Multilingual** β 50+ Cameroonian languages via Gemini: Ewondo, Bassa, Fulfulde, Lamnso, Kenyang, Ghomala, Gbaya, Baka, Mafa, Giziga, and more
- **AI-powered** β Gemini analyzes reports, classifies incidents, matches resources
- **Victim-controlled contact** β Anonymous inbox, WhatsApp bridge, or optional direct
- **Admin dashboard** β NGO partners view anonymised cases, reply, refer to other orgs
- **Audit logging** β All admin actions logged
- **Export** β Anonymised CSV/JSON for donor reporting
- **WhatsApp bot** β Conversational flow, auto-clear reminder (Phase 2)
- **WhatsApp bridge** β Twilio Proxy for masked numbers (Option B)
## Quick start
```bash
# Install dependencies
npm install
# Setup environment
cp .env.example .env
# Edit .env: add DATABASE_URL, DIRECT_URL (from Supabase), GEMINI_API_KEY, ENCRYPTION_KEY
# Or run: npm run generate-secrets
# Supabase database setup (see docs/SUPABASE_SETUP.md)
npx prisma generate
npx prisma migrate deploy
npm run db:seed
# Run development server
npm run dev
```
- **Web app**:
localhost
- **Partner dashboard**:
localhost
- Admin: `admin@safevoice.cm`
- Security (Gendarmerie): `gendarmerie@safevoice.cm`
- Government (MINPROFF): `minproff@safevoice.cm`
- Password: `safevoice β¦