A voice-to-portfolio AI agent designed to bridge the opportunity gap in South Africa. Built with Python, Gemini 2.5, and Whisper-v3.
# πΏπ¦ Project Ithuba (Opportunity)
**"Your Voice is Your CV"**
Project Ithuba is an AI-powered agentic workflow built to solve a systemic South African challenge: the **"Visibility Gap."** Millions of talented individuals in the informal economy lack formal CVs. This tool allows them to speak their experience in their own words and uses AI to translate that into a professional, industry-standard digital profile.
---
## π Live Link
**Try the app here:** ithu-ba.streamlit.app
---
## π Tech Stack & Architecture
- **Language:** Python 3.11+
- **LLM Orchestration:** Google Gemini 2.5 Flash (for high-speed skill extraction)
- **Speech-to-Text:** OpenAI Whisper via Groq (Optimized for SA accents & speed)
- **PDF Generation:** FPDF2 (In-memory byte-stream generation)
- **UI:** Streamlit (Customized with CSS for a premium dark-mode experience)
## π Key Engineering Features
- **Agentic Skill Extraction:** Beyond simple transcription, the system identifies "Shadow Skills" (e.g., converting "managing community water distribution" into "Logistics & Resource Operations").
- **POPIA Mindful:** Designed with a focus on data privacy, ensuring user experience is handled securely.
- **South African Context:** Prompt-engineered specifically to recognize local industry terminology (e.g., "spaza", "bakkie", "piece-work") and informal economy nuances.
- **Multilingual Support:** UI and processing support for English, isiZulu, and Afrikaans.
## π Project Structure
```text
ithuba/
βββ app/
β βββ main.py # Streamlit UI & Session State Logic
βββ core/
β βββ engine.py # AI Orchestration (Gemini + Whisper)
β βββ utils.py # PDF Generation & Text Processing
β βββ languages.py # UI Translation Dictionaries
βββ requirements.txt # Optimized Production Dependencies
βββ .env # Template for API Keys