About Bubbles Somewhere out there, someone wrote a really good blog post today. You'll probably never find it. Google won't show it to you. Social media buried it under engagement bait. Bubbles tries to surface it. Community voting applied to thousands of personal, independent blogs, with identity and discussion routed through the Fediverse. Why Bubbles How it works Ranking Participating Feeds & data Who made this Why Bubbles Hacker News and Lobste.rs have community voting figured out, but non-tech content gets drowned by the tech majority. Kagi Small Web curates thousands of personal sites, but has no community-driven ranking. Blog directories help you find blogs, not today's best blog post. Social platforms own the conversation. Mastodon is decentralized and ad-free, but you only see what the people you follow share. RSS is great, but solitary. There's no collective signal telling you what's worth reading today. Bubbles fills that gap. We're part of the IndieWeb ecosystem, one small piece in a larger picture. How it works We monitor thousands of independent, personal blogs via RSS. Every new post appears on Bubbles automatically. Nobody submits individual links. The blogs were hand-picked from various curated sources and individually reviewed. More details on our inclusion criteria are in the FAQ. You can also check whether a blog is already listed. You vote on the posts worth reading. The good stuff floats to the top. Everything else sinks over time. When you click a title, you leave Bubbles. You land on the actual blog, see the author's design, explore their other posts. We will never build reading views or anything else that keeps you from visiting the blog itself. The whole point is to send you there. Four views: Top (ranked by votes and how recent they are), New (every post as it comes in), Hot (where people are talking right now), and Random (posts from random blogs across the whole archive). Ranking The front page is shaped by two things: votes and time. Every post starts equal. Your votes decide what rises. A single vote has real weight. Older posts can come back. Every vote counts by its own age, whatever the age of the post. A post from last spring that gets its first vote today stands where a post from this morning with one vote stands. Votes from long ago have faded, and a post that already had its day needs more new votes to climb back than a fresh one. The formula Score = sum over all votes of w * 25 / (hours since the vote + 4) ^ 1.4 25 = fixed weight per vote. Comments are intentionally excluded from the ranking: a back-and-forth between two users can inflate comment counts without reflecting wider interest. Votes are capped at one per person and are therefore a cleaner signal. Hours since the vote: each vote runs on its own clock. The age of the post plays no part once it has a vote. Posts nobody has voted for are ordered by their age and stay below any post with a recent vote. A vote you take back and cast again keeps its original time. 1.4 = gravity, how fast a vote fades. After a day a vote has lost most of its weight, which is what makes room for the next posts. w = weight of a late vote: w = 1 / (1 + max(0, n - 2)), where n is the number of votes the post had at least 12 hours before this one. Two of them are free, so a first wave, a post found again through the random list, or a post that had a vote or two before its real readers arrived counts in full (w = 1). From the third earlier vote on a new vote counts half, after four a third, after five a quarter. A post that already had its time at the top needs several new votes to get back there, where a new post needs one. Participating You log in with a Fediverse account (Mastodon, Pixelfed, GoToSocial, and others). If you don't have one, mastodon.social is free and takes two minutes. Vote on posts you enjoy. Over time, your personal Favourite Blogs list builds itself from your voting history. When you find a blog you want to keep up with, follow it. Your My feed then shows new posts only from blogs you follow. Comments live on the Fediverse. Every post on Bubbles has a corresponding post on @bubbles@social.bubbles.town. Reply to it and your comment shows up here. See the FAQ for details on supported platforms and how comments work. Feeds and data Bubbles publishes RSS feeds for every view. The full list of blogs is available as plain text and OPML. We store your Fediverse handle, your votes, and which blogs you follow. No emails, no passwords, no tracking. We use Plausible for cookieless analytics, self-hosted on a server in Germany. Our dashboard is public. See the FAQ for more on privacy. Who made this Ben, from Mülheim, Germany. I wanted something like Hacker News for the non-tech internet, so I built it. Find me on the Fediverse at @viermalbe@troet.cafe. If you want to support the project, here's how.