Made in Rwanda Content Recommender - AIMS KTT Hackathon 2026
# Made in Rwanda Content Recommender
## AIMS KTT Fellowship Hackathon 2026 | G5 | S2.T1.3
---
## The Problem
Every day, hundreds of buyers in Rwanda and across Africa
search online for handmade leather bags, agaseke baskets,
beaded jewelry and kitenge dresses.
They never find the local artisan who makes exactly what they want.
Instead, the algorithm shows them Nike. Zara. Alibaba.
Local artisans lose sales not because their products are worse,
but because global e-commerce algorithms favor
high-volume international sellers.
This system fixes that.
---
## What This System Does
A content-based niche-first recommender that:
- Takes any search query in English, French or Kinyarwanda
- Finds the most relevant Made-in-Rwanda products
- Applies a local-boost rule to always surface local artisans
- Reaches offline artisans with no smartphone via weekly SMS
- Runs in under 10ms on a free CPU with no paid API needed
---
## Key Results
| Metric | Score |
|---|---|
| NDCG@5 | 0.9833 |
| Local Presence Rate | 100% |
| Query time | under 10ms |
| Languages supported | English, French, Kinyarwanda |
| Products in catalog | 400 Made-in-Rwanda products |
| Queries evaluated | 120 queries |
---
## How to Run in 2 Commands on Free Colab CPU
Command 1 - Install dependencies:
pip install pandas numpy scikit-learn
Command 2 - Run the recommender:
python recommender.py --q "leather boots"
More example queries:
python recommender.py --q "cadeau en cuir pour femme"
python recommender.py --q "agaseke na impano"
---
## Repository Structure
aims-ktt-g5-s2t13-recommender/
|
|-- recommender.py : Main CLI recommender TF-IDF + local-boost
|-- evaluate.py : Evaluation NDCG@5 + Local Presence Rate
|-- data_generator.py : Generates all 3 synthetic datasets
|
|-- catalog.csv : 400 Made-in-Rwanda products
|-- queries.csv : 120 search queries EN/FR/mixed
|-- click_log.csv : 5000 click events
|
|-- dispatcher.md : Offline artisan w …