hackernews-button VS xorfilter

Compare hackernews-button vs xorfilter and see what are their differences.

hackernews-button

Privacy-preserving Firefox extension linking to Hacker News discussion; built with Bloom filters and WebAssembly (by jstrieb)

xorfilter

Go library implementing binary fuse and xor filters (by FastFilter)
InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
hackernews-button xorfilter
8 1
83 656
- 1.7%
2.8 5.1
5 months ago 4 months ago
C Go
GNU General Public License v3.0 only Apache License 2.0
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

hackernews-button

Posts with mentions or reviews of hackernews-button. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2021-06-13.
  • GitHub - jstrieb/hackernews-button: Privacy-preserving Firefox extension linking to Hacker News discussions; built with Bloom filters and WebAssembly
    1 project | /r/firefox | 15 Jan 2022
  • Ask HN: I curate HN stories which didn't reach the front page. Feedback please
    3 projects | news.ycombinator.com | 13 Jun 2021
    It's worth noting that my extension is far from perfect – it turns out that determining whether a specific page has been submitted to Hacker News is far from a trivial problem to solve. In general, this is because multiple URLs can map to the same page.

    Direct string comparison of the current URL to previously submitted ones doesn't work because there are many ways for two identical web pages to have different URLs. For example, the URL fragments can differ (the part after the "#" that may or may not be present). Also there can be tracking parameters (often—but not necessarily—prefixed with "utm_"), which don't change anything about the page. But the URL parameters can't be entirely disregarded because sometimes sites, forums in particular, rely on them – consider pages that use an "?id=..." parameter for different pages. Thus some parameters should be removed, but some shouldn't. The same website having different domains (or domains that change over time) further complicates the situation.

    My solution was to "canonicalize" URLs by transforming them into a simplified form using some pretty rough heuristics for common sources of noise. The Python code to do that is here: https://github.com/jstrieb/hackernews-button/blob/master/can...

    All of this to say that even though I've used my extension for months and have been quite happy, there will inevitably be false negatives.

  • Privacy-preserving Firefox extension linking to Hacker News discussion; built with Bloom filters and WebAssembly
    1 project | /r/coolgithubprojects | 1 Mar 2021
    1 project | /r/github | 1 Mar 2021
    1 project | /r/programming | 1 Mar 2021
  • Show HN: Privacy-preserving browser extension linking to HN discussion
    4 projects | news.ycombinator.com | 1 Mar 2021
    Thanks for clearing that up, yes I'm not that familiar with Bloom filters, seems like an interesting and useful concept. It could probably (pun intended) be applied to many applications to increase privacy.

    I like the [1] Workflow file you've made, the comments really help with reading shell code. I'm also amazed you can query 4M entries everyday with BigQuery, I thought that might be fairly expensive to do right? Or is this below a free tier?

    [1] https://github.com/jstrieb/hackernews-button/actions/runs/61...

xorfilter

Posts with mentions or reviews of xorfilter. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2021-03-01.
  • Show HN: Privacy-preserving browser extension linking to HN discussion
    4 projects | news.ycombinator.com | 1 Mar 2021
    > Rather than determining if the current site has been submitted by querying the Firebase/Algolia APIs with every page you visit, the extension contains regularly-updating Bloom filters for all submitted HN stories to preserve user privacy.

    Nice!

    I built a pi-hole esque stub dns-resolver that uses Bloom Filters generated from hostfiles (60 MiB, 5M entries --> 2 MiB with 1% false positives) and it worked like a charm. At some point, I also looked into Xor Filters which are apparently even lighter and faster but couldn't find a JavaScript implementation [0].

    I; however, stopped using Bloom Filters because its immutability meant building it over and over again which was a pain. Inverted Bloom Filters might have been useful since they can be updated in-place [1]. Instead, I went for storing hostnames in a Finite State Automata [2], which while not as compact as Bloom Filters, could be updated in-place, are deterministic, and faster. Likely, not a fit for your use-case however.

    PinSketches might be a fit for accomplishing efficient set reconciliation.

    [0] https://github.com/FastFilter/xorfilter#implementations-of-x...

    [1] https://www.youtube.com/watch?v=eIs9nJ-JFvA

    [2] http://stevehanov.ca/blog/?id=115

    [3] https://github.com/sipa/minisketch

What are some alternatives?

When comparing hackernews-button and xorfilter you can also consider the following projects:

newsit - Chrome Extension for Hacker News and Reddit Links