Free AI-powered professional CV service for Kenya
# 🇰🇪 CV MTAANI
**Free Professional CVs for Everyone**
CV Mtaani is a WhatsApp-based AI CV assistant. The first working version supports:
- WhatsApp Cloud API webhook
- conversational CV interview
- truthful AI CV drafting
- DOCX generation
- PDF generation
- voluntary M-Pesa support message
- SQLite session storage
- health endpoint
- Docker deployment
## 1. Install
Python 3.12+ recommended.
```bash
python -m venv .venv
# Windows:
.venv\Scripts\activate
# Linux/macOS:
source .venv/bin/activate
pip install -r requirements.txt
```
## 2. Configure
Copy `.env.example` to `.env` (or set the variables in your hosting provider).
Required:
- `WHATSAPP_TOKEN`
- `WHATSAPP_PHONE_NUMBER_ID`
- `WHATSAPP_VERIFY_TOKEN`
- `OPENAI_API_KEY`
`OPENAI_MODEL` defaults to `gpt-5.6-luna`.
## 3. Run locally
```bash
python app.py
```
The webhook is:
`
your-domain`
For local development, expose port 8000 through a secure HTTPS tunnel.
## 4. Meta / WhatsApp
In Meta Developers, create/configure a WhatsApp Cloud API app and set:
- Callback URL: `
your-domain`
- Verify token: exactly the value of `WHATSAPP_VERIFY_TOKEN`
- Subscribe the app to the WhatsApp `messages` webhook field
- Put your WhatsApp Cloud API token and Phone Number ID in the environment
Do not put tokens in the source code or send them in chat.
## 5. OpenAI
Create an API key in your OpenAI account and set `OPENAI_API_KEY`.
The model is configurable through `OPENAI_MODEL`, so it can be changed without editing the application.
## 6. Important production upgrades
Before a large public launch, add:
- media/document ingestion for existing CVs
- job-advert PDF/image/text ingestion
- stronger JSON schema validation
- rate limiting and abuse prevention
- encrypted/managed database
- automatic deletion/retention policy for CV data
- admin dashboard
- delivery retry queue
- WhatsApp message deduplication
- monitoring and alerts
- payment/support reconciliation if voluntary contributions grow
## 7 …