News for hackers. Stuff that matters.

novocayn

Show HN: I built a vector store from scratch (and you can too)

I wrote a hybrid vector store from scratch in Go. Supports hybrid retrieval over BM25, Flat, HNSW, IVF, PQ and IVFPQ Index with Quantization, Pre-Filtering, Reranking, Reciprocal Rank Fusion, Soft Deletes, Index Rebuilds and much much more.It's called Comet. Built for hackers, not hyperscalers. It's tiny enough to fit in your head, and good enough to blow it :DIt packs everything you need to...

( Read More... | no comments | 4 points | on HN )
Re:Show HN: I wrote a full text search engine in Go on Thursday October 09, 2025 @10:36PM (#45534948)
Ohh good catch, I think I missed it. Thanks for the note :)
Re:Show HN: I wrote a full text search engine in Go on Thursday October 09, 2025 @10:33PM (#45534943)
ohh boy, second this :D
Re:Show HN: I wrote a full text search engine in Go on Thursday October 09, 2025 @10:32PM (#45534933)
You're right, string-based queries are very expressive. I intentionally avoided that here so readers could focus on how FTS indexes work internally. Adding a full query system would have shifted the focus away from the internals.

If you notice there are vv obvious optimizations we could make. I’m planning to collect them and put a these as code challenges for readers, and building string-based queries would make a great one :)

Re:Show HN: I wrote a full text search engine in Go on Thursday October 09, 2025 @08:34PM (#45534423)
> AIs have feelings too

Ohh boi, that’s exactly how the movie "Her" started! XD

Re:Show HN: I wrote a full text search engine in Go on Thursday October 09, 2025 @05:54PM (#45533511)
Got to admit, initial impressions, this is pretty neat, would spend sometime with this. Thanks for the link :)
Re:Show HN: I wrote a full text search engine in Go on Thursday October 09, 2025 @05:12PM (#45533145)
tysm, would try pairing it with HNSW and IVF, halfway through :)
Re:Show HN: I wrote a full text search engine in Go on Thursday October 09, 2025 @05:09PM (#45533117)
Ohh, I thought that inline comments would make it grokkable and be a low-friction way in. Seems this didn’t land the way I intended :'

Should a multi-part blog would've been better?

Re:Show HN: I wrote a full text search engine in Go on Thursday October 09, 2025 @05:07PM (#45533098)
tysm, i love this, FST is vv cool
Re:Show HN: I wrote a full text search engine in Go on Thursday October 09, 2025 @05:06PM (#45533086)
> comment blocks inside codebase

Is vibe-commented a thing yet? :D

Wanted to give fellow readers a good on-ramp for understanding the FTS internals. Figured leaning into readability wouldn’t hurt

For me this makes the structure super easy to grok at a glance

https://github.com/wizenheimer/blaze/blob/27d6f9b3cd228f5865...

That said, totally fair read on the comments. Curious if they helped/landed the way I intended. or if a multi-part blog series would’ve worked better :)

Re:Show HN: I wrote a full text search engine in Go on Thursday October 09, 2025 @04:55PM (#45532977)
Claude: "You're absolutely right" :D
Re:Show HN: I wrote a full text search engine in Go on Thursday October 09, 2025 @04:42PM (#45532852)
Yayiee, the “cant prove it” Doakes Dexter meme, making it to HN
Re:Show HN: I wrote a full text search engine in Go on Thursday October 09, 2025 @04:39PM (#45532810)
On my way to make a Dexter meme on this

When you think OP vibe-coded the project but can’t prove it yet

https://x.com/FG_Artist/status/1974267168855392371

Re:Show HN: I wrote a full text search engine in Go on Thursday October 09, 2025 @03:47PM (#45532201)
Bleve is an absolute beast! built with <3 at Couchbase Fun fact: the folks who maintain it sit right across from me at work
Re:Show HN: I wrote a full text search engine in Go on Thursday October 09, 2025 @03:28PM (#45532031)
Observation is spot on. Biword matching would definitely ease this. Stealing bi-word matching for a future iteration, tysm :D
Re:Show HN: I wrote a full text search engine in Go on Thursday October 09, 2025 @03:14PM (#45531847)
Mostly wanted a refresher on GPU accelerated indexes and Vector DB internals. And maybe along the way, build an easy on-ramp for folks who want to understand how these work under the hood
Re:Show HN: I wrote a full text search engine in Go on Thursday October 09, 2025 @03:10PM (#45531795)
Thanks! Honestly, given it's hacked together in a weekend not sure it’d measure up to Lucene/Bleve in any serious way.

I intended this to be an easy on-ramp for folks who want to get a feel for how FTS engines work under the hood :)

Re:Show HN: I wrote a full text search engine in Go on Thursday October 09, 2025 @03:03PM (#45531722)
I’m learning the internals of FTS engines while building a vector database from scratch. Needed a solid FTS index, so I built one myself :)

It ended up being a clean, reusable component, so I decided to carve it out into a standalone project

The README is mostly notes from my Notion pages, glad you found it interesting!

Re:Show HN: I wrote a full text search engine in Go on Thursday October 09, 2025 @03:00PM (#45531684)
Because running a three-account bot‑net farm is fun :D Okay, jk, please don’t mod me out.

One’s for browsing HN at work, the other’s for home, and the third one has a username I'm not too fond of.

I’ll stick to this one :) I might have some karma on the older ones, but honestly, HN is just as fun from everywhere