Show HN: Real-time system that tracks how news spreads across 200k websites

yandori.io

125 points by antiochIst 5 days ago

I built a system that monitors ~200,000 news RSS feeds in near real-time and clusters related articles to show how stories spread across the web.

It uses Snowflake’s Arctic model for embeddings and HNSW for fast similarity search. Each “story cluster” shows who published first, how fast it propagated, and how the narrative evolved as more outlets picked it up.

Would love feedback on the architecture, scaling approach, and any ways to make the clusters more accurate or useful.

Live demo: https://yandori.io/news-flow/

keepamovin 22 minutes ago

I feel a graph diagram (hub and spoke, showing "data flow") would be a useful alt view here.

Cool website. As others note if this could tie in deep sources like FB, X, Reddit, etc...it would be almost "chain of evidence" canonical.

A view where websites/sources were associated with geo data (possibly involving a globe or map) would be very cool, too.

YmiYugy 3 hours ago

The idea is pretty cool, but it doesn't work super well. 1. I imagine most major news outlets don't have RSS feeds these days. 2. A lot of stuff originates from news agencies, so they don't spread from website to website, but radiate out from the agency. 3. Most of the included sources are pretty small. To draw meaningful conclusions we would need infos like popularity, political leaning, nation of origin, etc. 4. The similarity check doesn't appear to do translation. So when news spreads from one country to another we loose the thread.

  • badestrand 3 hours ago

    The devil really is always in the details.

masterphai 5 days ago

Interesting project - it’s rare to see news-flow tracking done in real time at this scale. One thing you may want to stress-test is how stable the clustering remains when stories evolve semantically over a few hours. Embeddings tend to drift as outlets rewrite or localize a piece, and HNSW can sometimes over-merge when the centroid shifts.

A trick that helped in a similar system I built was doing a second-pass “temporal coherence” check: if two articles are close in embedding space but far apart in publish time or share no common entities, keep them in adjacent clusters rather than forcing a merge. It reduced false positives significantly.

Also curious how you handle deduping syndicated content - AP/Reuters can dominate the embedding space unless you weight publisher identity or canonical URLs.

Overall, really nice work. The propagation timeline is especially useful.

  • supriyo-biswas 2 hours ago

    Thanks for your comment, unfortunately it seems that your comments are primarily LLM-generated (for people looking for evidence, the first comments of this user should provide enough evidence, although they’re getting better by fine tuning the prompt). As HN is primarily a place for humans, please do not do this here. Thanks.

    • yieldcrv 30 minutes ago

      How can I bait this bot?

kburman an hour ago

This is absolutely brilliant. If you integrate Reddit and Twitter/X, you’d get a much more complete picture of how stories spread across the internet.

  • A4ET8a8uTh0_v2 an hour ago

    Yep. I have some suspicions on how the information travels lately ( it is kinda both ways depending on the 'type' of news ), but it would absolutely be of general interest.

ewuhic 3 hours ago

Without evaluating it thoroughly and judging just from description - I really hope this ends up open-sourced - will help drastically to many good-intent parties.

leobg an hour ago

I dream of having that for video:

For any given clip, short or excerpt, find the most complete, unedited version that it was taken from.

KomoD 5 hours ago

I think the idea is interesting but it includes a lot of spam and non-news (e.g. archive.fo, .vn, .today, etc.)

gioele 2 hours ago

Kudos on releasing Yandori!

We have been (low-keep) working on something similar (more from an academic point of view) for the past few years:

This is the introductory article (open access): "Comparison of news commonality and churn in international news outlets with TARO" https://dl.acm.org/doi/abs/10.1145/3603163.3609062

(Allow me a moment of pride for the student leading this project: the paper won the Ted Nelson Award at ACM Hypertext 2023.)

hk1337 2 hours ago

This seems like it could have an additional use case of labeling each news source left, right, center, neutral/factual and tracking how or if each one releases an article.

actinium226 an hour ago

Very cool. I'm curious what frontend and backend technologies are used?

dmix 3 hours ago

How do you handle time zone issues with the dates?

I’ve been curious how much news starts from social media. So many news stories today are “someone said x on twitter”.

Havoc 3 hours ago

That's really cool!

Curious how you sourced the feeds? It seems to have a bias towards Indian/Srilanka/Iran/Indonesia/Turkey etc - i.e. not the traditional western centric reporting. Always interested in trying to get a more balanced news diet so anything you could share around that would be interesting. Most out of the box news tools seem to automatically lean west

FYI layout sometimes breaks like so:

https://i.imgur.com/FXeqB9R.png

  • supermatt 3 hours ago

    “Traditional western reporting” is traditionally a western thing. That’s only 15% of the global population - so if anything it seems bias towards that.

hmokiguess 4 hours ago

Cool idea! What I liked the most was the breakdown into categories like “breaking” and “trending” plus the number of sources.

The view showing the flow with a play animation was a nice concept but I couldn’t see much value in it, wondering if you could try to get a more aggregate stats that shows a connection between these different flows, maybe they follow a pattern like ad-based campaigns or publishers who own these domains, which would explain things. Expanding on this idea, could even try and setup different scores and metrics based on major groups and sponsored content versus organic spread.

analogears 2 hours ago

Tried this on iPhone - the category tabs (Sports, World News, Business) get cut off on the right and there's no horizontal scroll indicator, so I didn't realise there were more options at first. The story cards also aren't using the full screen width, leaving wasted space on both sides.

Cool concept though - the source count and "+N" spread metrics give a quick sense of which stories have legs.

jacquesm 2 hours ago

Is there a way you could use this system to track propaganda?

codethief 3 hours ago

Cool idea! On mobile (Chromium on Android) I was confused at first because nothing happened when I tapped any of the stories – until I realized I can zoom out and the info about how the story propagated is at the end of the page.

psychoslave 4 hours ago

Can it be tuned to get a sense of how it reach Wikimedia projects?

juujian 4 hours ago

Very cool. Our lab will want to do something like this eventually. Do you have a repo?

Oras 4 days ago

I really like the idea. I would love a feature to add keywords and see related news.

A4ET8a8uTh0_v2 an hour ago

Good idea. Clean execution. Nice UI. I will repeat other poster's plea to make it open source. The information this provides is useful.

jMyles 4 hours ago

Just tried it, and clicking on the stories doesn't seem to do anything. Console shows "TypeError: can't access property "time", flowData[Math.min(...)] is undefined"

Ubuntu 24.04, Firefox 145.0.1 (64-bit)

rvz 3 hours ago

This looks a lot like a combination of spam and slop posed as "breaking news".

> Opinion: Operation Holiday serves a critical need in our communities

> Dhru Fusion WooCommerce Integration Plugin

> Powering the Future of Wellness Through Premium Food Supplement Ingredients

That isn't even remotely important at all so really unreliable.

  • hopelite 2 hours ago

    Have you ever considered providing feedback in a constructive and supportive manner?