Real-time Kenya news analytics: Airflow 3.0 + HuggingFace sentiment + spaCy NER + keyword topics + dbt + Streamlit
# 🗞️ Kenya News NLP Intelligence: Real-Time News Analytics Pipeline
**Kenya News NLP Intelligence** is a production-grade daily news analytics pipeline that ingests live RSS feeds from five active Kenyan English-language outlets — KBC, Capital FM, Nairobi Wire, Kenya News Agency, and Kahawa Tungu — runs three NLP models against every new article (transformer sentiment classification, spaCy named entity recognition, and a Kenya-specific keyword topic classifier), materialises all results through a seven-model dbt transformation layer on PostgreSQL, and surfaces findings across a four-tab dark-themed Streamlit dashboard. The entire stack runs containerised on Docker Compose with Airflow 3.0 orchestration, two isolated PostgreSQL databases, and zero paid APIs.
| Metric | Value |
|--------|-------|
| RSS sources | 5 (KBC, Capital FM, Nairobi Wire, Kenya News Agency, Kahawa Tungu) |
| Articles ingested | 70 raw articles |
| Named entities extracted | 1,308 (spaCy en_core_web_sm) |
| Topic rows | 560 (70 articles Ă— 8 topic categories) |
| Airflow tasks | 6 (all 6/6 SUCCESS) |
| dbt models | 7 (2 staging views · 5 mart tables) |
| dbt tests | 63 (all 63/63 PASS) |
| Pytest test cases | 69 (all 69/69 PASS) |
| Dashboard tabs | 4 |
| Docker services | 6 |
| Infrastructure cost | $0 — open-source stack, no paid APIs |
---
## 🎯 Project Goal
Kenya's news ecosystem is fragmented across dozens of outlets, each with its own editorial slant, beat coverage emphasis, and publication cadence. A political analyst, market researcher, or civil society organisation tracking how issues move through the news cycle — which entities dominate coverage, how sentiment shifts before and after key events, how topic distribution changes across publications — has no off-the-shelf tool that spans the full Kenyan press in a single interface.
Kenya News NLP Intelligence builds the complete pipeline for this use case. Five verified RSS feeds are ingested daily, each article is enriched with a sent …