nowfound

Dev tools · alternatives · 2026

24 alternatives to A fast HNSW implementation in Rust

HNSW implementation in Rust. Reference: https://arxiv.org/ftp/arxiv/papers/1603/1603.09320.pdf - swapneel/hnsw-rust

A Rust-based implementation of the HNSW (Hierarchical Navigable Small World) algorithm for fast similarity search. Built for developers who need efficient vector search capabilities in their applications, it offers… Below are 24 products that do a similar job, ranked by how close each is in meaning and then by launch-day votes. A fast HNSW implementation in Rust launched in 2024; newer entries below may have overtaken it.

  1. 1

    Heirarchical Navigable Small Worlds. Contribute to dicroce/hnsw development by creating an account on GitHub.

    2025 · github.com · its alternatives →

  2. 2

    In an effort to understand it, I put together a simple, pure python implementation of HNSW, an approximate nearest neighbor library. Learned a lot, and I think for anyone interested in vector search it's an exercise that's absolutely worth doing. The code is optimized (imo) for readability, and working (albeit, quite slowly) on putting together a tutorial that walks through the motivation and implementation of HNSW. There's also working code examples for using the library for text and image search with sentence transformers and CLIP!

    2025 · github.com · its alternatives →

  3. 3

    Frustrated by the inability to play with semantic search / ANN in Go w/o a heavy-weight external DB, I created this HNSW library. I hope other gophers find it useful.

    2024 · github.com · its alternatives →

  4. 4

    I recently found myself computing the similarity between lots of very high dimensional vectors (i.e., sentence embedding vectors from LLMs), and I wanted to try some more powerful measures of similarity/dependency than just Cosine similarity, which seems to be the default for everything nowadays because of its computational efficiency. There are many other more involved measures that can detect more subtle relationships, but the problem is that some of them are quite slow to compute, especially if you're trying to do it in Python. For my favorite measure of statistical dependency,…

    2023 · github.com · its alternatives →

  5. 5

    End-to-end deep dive of the project, spanning a large GPU cluster, distributed RocksDB, and terabytes of sharded HNSW.

    2025 · blog.wilsonl.in · its alternatives →

  6. 6

    SeekStorm: vector & lexical search - in-process library & multi-tenancy server, in Rust. - SeekStorm/SeekStorm

    2024 · github.com · its alternatives →

  7. 7

    A year ago, my co-founder launched Desktop Docs here on HN. It's a Mac app we built with Electron that uses CLIP embeddings to search photos and videos locally with natural language. We got positive feedback from HN and our first paying customers, but the app was almost 1GB and clunky to use. TLDR; rebuilding in Rust was the right move. So we rewrote the app with Rust and Tauri and here are the results: - App size is 83% smaller: 1GB → 172MB - DMG Installer is 70% smaller: 232MB → 69.5MB - Indexing files is faster: A 38-minute video now indexes in ~3 minutes instead of 10-14 minutes -…

    2025 · desktopdocs.com · its alternatives →

  8. 8

    Hi all, I've talked about glidesort a few times on HN already, but it's finally ready for release. If you have any questions, feel free to ask. An academic paper on glidesort that goes into a lot more detail than the readme is upcoming, but is not ready yet. I will be giving a talk on glidesort tomorrow at FOSDEM 2023 in the Rust Devroom at 16:10, you can seek me out there as well. In other news, I am leaving academia soon, so if you have interesting (Rust) jobs the coming months feel free to approach me.

    2023 · github.com · its alternatives →

  9. 9

    A high-performance observability data pipeline. Contribute to vectordotdev/vector development by creating an account on GitHub.

    2019 · github.com · its alternatives →

  10. 10

    Boost relevance and UX with fast hybrid and semantic search

    2025 · meilisearch.com · its alternatives →

  11. 11AD

    We (Nick, Dens, Denzell, Fede, Drew, Aaryan, and Daniel) have been building HN Discovery, a discovery-focused search engine for Hacker News, in our spare time for the past 6 months and are excited to show it! It adds the following features relative to the existing keyword search interface and preserves the existing ones: - no-JS version (hnnojs.trieve.ai) - site:{required_site} and site:{negated-site} filters - public analytics - LLM generated query suggestions based on random stories - recommendations - dense vector semantic search - SPLADE fulltext search - RAG AI chat - order by…

    2024 · hn.trieve.ai · its alternatives →

  12. 12

    Hi HN, I built EdgeVec, a vector database that runs entirely in the browser. It implements HNSW (Hierarchical Navigable Small World) graphs for approximate nearest neighbor search. Performance: - Sub-millisecond search at 100k vectors (768 dimensions, k=10) - 148 KB gzipped bundle - 3.6x memory reduction with scalar quantization Use cases: browser extensions with semantic search, local-first apps, privacy-preserving RAG. Technical: Written in Rust, compiled to WASM. Uses AVX2 SIMD on native, simd128 on WASM. IndexedDB for browser persistence. npm:…

    Dec 2025 · github.com · its alternatives →

  13. 13

    Cloud-native OSS search engine for observability. Contribute to quickwit-oss/quickwit development by creating an account on GitHub.

    2021 · github.com · its alternatives →

  14. 14

    Hey folks! As someone doing hybrid search daily and wishing I could have a pgvector-like experience but with actual prefiltered approximate nearest neighbours, I decided to just take a punt on implementing ACORN on a fork of the DuckDB VSS extension. I had to make some changes to (vendored) usearch that I'm thinking of submitting upstream. But this does the business. Approximate nearest neighbours with WHERE prefiltering. Edit: Just to clarify, this has been accepted into the community extensions repo. So you can use it like: ``` INSTALL hnsw_acorn FROM community; LOAD hnsw_acorn; ```

    Mar 2026 · github.com · its alternatives →

  15. 15

    We’ve just open-sourced Vicinity, a lightweight approximate nearest neighbors (ANN) search package that allows for fast experimentation and comparison of a larger number of well known algorithms. Main features: - Lightweight: the base package only uses Numpy - Unified interface: use any of the supported algorithms and backends with a single interface: HNSW, Annoy, FAISS, and many more algorithms and libraries are supported - Easy evaluation: evaluate the performance of your backend with a simple function to measure queries per second vs recall - Serialization: save and load your index for…

    2024 · github.com · its alternatives →

  16. 16

    Hey HN, this is Will and David from Fortress (https://news.ycombinator.com/item?id=41426998). We use a lot of async Rust internally, and created this library out of a need for an async-aware concurrent hashmap since there weren’t many available in the Rust ecosystem. Whirlwind is a sharded HashMap with a fully asynchronous API. Just as dashmap is a replacement for std::sync::RwLock, whirlwind aims to be a replacement for tokio::sync::RwLock. It has a similar design and performance characteristics to dashmap, but seems to perform better in read-heavy workloads with tokio's…

    2024 · github.com · its alternatives →

  17. 17
    Tantivy▲68

    A full-text, horse-speed search engine library in Rust

    2022 · github.com · its alternatives →

  18. 18

    tl;dr we built an embeddable stream processing engine in Rust using apache DataFusion, check us out at https://github.com/probably-nothing-labs/denormalized Hey HN, We’d like to showcase a very early version of our embeddable stream processing engine called Denormalized. The rise of DuckDB has abundantly made it clear that even for many workloads of Terabyte scale, a single node system outshines the distributed query engines of previous generation such as Spark, Snowflake etc in terms of both performance and cost. Now a lot of workloads DuckDB is used for were normally…

    2024 · github.com · its alternatives →

  19. 19

    Last week was insane for vector search. Weaviate raised $50M, and Pinecone raised $100M... That's a lot and makes you believe that vector search is hard. But it's not. I have spent the last couple of days implementing a single-file vector search engine from scratch, which is at least the tenth in the twenty years of my career. But this time, it's different. Instead of inventing a brand new algorithm and doing some crazy optimizations on the GPU, I: 1. took the standard HNSW algorithm, 2. fitted into 1000 lines of C++11 for portability, 3. added quantization and hardware-accelerated metrics,…

    2023 · github.com · its alternatives →

  20. 20

    Hey HN! I got nerd-sniped by Bloom Filters this weekend, specifically for searching datasets with high "cardinality" (number of unique items). They're an _amazing_ data structure that, at a fixed size, tracks potential set membership. That means unlike normal b-tree indexes, they don't grow with the number of unique items in the dataset. This makes them great for "needle in a haystack" search (logs, document) as implementations like VictoriaMetrics and Bing's BitFunnel show. I've used them in the past, but they've never been center-stage in my projects. I wanted high cardinality keyword…

    2025 · github.com · its alternatives →

  21. 21

    Hello! I'm learning Rust and also information security, so what better way to learn than to put a tool together practicing both skills? I've tried to use a couple of different tools for subdomain enumeration (part of the Discovery-party when it comes to penetration testing), but none of them were very fast, even if the DNS resolver I pointed them towards is, so I wrote my own tool that leverages concurrency to check a lot of subdomains, fast! It's written in Rust, main parts being using Tokio and async_channels, and I think it works good enough for a first release. I wanted to get recursive…

    2022 · github.com · its alternatives →

  22. 22

    🕸️🦀 A WASM vector similarity search written in Rust - tantaraio/voy

    2023 · github.com · its alternatives →

  23. 23SA

    Hi everyone, I've made an open-source library for fast spatial search in Rust. It's called Spart, and it currently provides the following features: - Five tree implementations: Quadtree, Octree, Kd-tree, R-tree, and R*-tree - Python bindings (`pyspart` on PyPI) - Fast k-nearest neighbor (kNN) and radius search - Bulk data loading for efficient tree construction Project's GitHub repo: https://github.com/habedi/spart

    2025 · its alternatives →

  24. 24AF

    Serialization framework with some interesting numbers: 10-20x faster on nested objects than json/protobuf. Technical approach: compile-time codegen (no reflection), compact binary protocol with meta-packing, little-endian layout optimized for modern CPUs. Unique features that other fast serializers don't have: - Cross-language without IDL files (Rust ↔ Python/Java/Go) - Trait object serialization (Box) - Automatic circular reference handling - Schema evolution without coordination Happy to discuss design trade-offs. Benchmarks:…

    Oct 2025 · fory.apache.org · its alternatives →

Also compare

Ranked by how close each launch is in meaning, then by votes. Prices were read from each product’s own site when checked and can change. Refine with your own description →