Prefacing this with - I'm not a writer. Why did I do this ? Because I wanted to see if I could do it with free resources and I was bored. A friend suggested posting here, so yeah...
Built a full-stack application that scrapes news articles from various RSS feeds and uses Hugging Face transformers for Named Entity Recognition (NER). Locations are refined via fuzzy matching with pycountry to automate geo-tagging, enabling display on a heat map built with React + Leaflet.
Designed as a proof-of-concept for real-time aggregation and visualization of global news using LLMs/AI.
Live Demo:
Tech Stack:
• Frontend: React + Vite + Leaflet.js
• Backend: FastAPI + Uvicorn
• Database: Supabase (PostgreSQL)
• NLP: Python + HuggingFace Transformers
• Hosting: Render + Vercel
Key Features:
• Scheduled data scraping from RSS feeds
• Automated geo-tagging using NER + fuzzy matching
• Minimal, map-based UI for exploring story clusters
Everything after scraping is automated — from entity extraction and map display.
The country polygon are available freely which you can download, the RSS reader is a python script run through task scheduler when I log on. The UI could be improved further but I don't see anything I could add at the moment, the point was to give immediate feedback on what's and how much is happened where in the world.
NER picks up other stuff too which you could use for further filters, but that also requires cleaning.
Another addition would be grouping using embedding for related events.
The only manual part of the project right now is normalizing new RSS feeds.
Top comments (0)