Logo Lanfrica

PreciousMuemi/talentlink-kenya

Domaine:

natural language processing

Type de record:

software
Créateur:
Pre
Hôte:
# TalentLink Kenya Grassroots sports talent discovery — connecting invisible athletes (like a 17-year-old striker in Kisii who only gets picked through word of mouth) to verified coaches, clubs and scouts, on any phone. ## What's in this folder ``` talentlink/ ├── frontend-demo/ │ └── index.html ← Open this directly in a browser. Premium │ "Athletic Noir" UI: Landing, Player Dashboard, │ Coach Directory, Admin Portal, and a live │ "Telco Log Simulator" panel for judges. └── backend/ ├── main.py FastAPI app entrypoint ├── database.py SQLAlchemy engine/session ├── models.py Player, Coach, Trial, Endorsement ├── seed.py Demo data: Kisii, Kitui, Turkana, Mombasa ├── requirements.txt ├── services/ │ └── sms_service.py Africa's Talking SMS wrapper └── routers/ ├── players.py Coach/Scout search directory API ├── coaches.py Admin verification queue API ├── trials.py Post a trial → auto SMS-blasts matching players ├── ussd.py *384# session state machine (CON/END) └── voice.py Emergency/trials hotline (Voice XML) ``` ## Running the UI demo Just open `frontend-demo/index.html` in any browser — no build step. It's a fully clickable mockup: switch tabs, open the coach directory, approve a coach in the Admin Portal, click **Post New Trial** to watch the simulated SMS payload fire in the live Telco Log panel on the right. ## Running the backend ```bash cd backend pip install -r requirements.txt # .env (or export directly) AT_USERNAME=sandbox AT_API_KEY=your_sandbox_key DATABASE_URL=postgresql://postgres:postgres@localhost:5432/talentlink python seed.py # populate demo data uvicorn main:app --reload --port 8000 ``` Key endpoints: | Method | Path | Purpose | |---|---|---| | GET | `/api/v1/players?county=Kisii&sport=football` | Coach directory search | | POST | `/api/v1/trials` | …