Full-stack engineer building web and desktop apps, AI backends, and secure cloud
I build products end to end: desktop apps in Rust and Tauri, real-time backends in Node.js, and AWS infrastructure defined in Terraform. I write about what I learn shipping them, from shrinking desktop apps to locking down cloud access. More at itshuzaifa.com.
Markdown supported · ⌘↵ to post
Rose Alvina
Useful comparison, especially the point that the pipeline matters more than the database. One thing worth adding for anyone copying this setup: the "Keeping the index in sync" step gets much cheaper if you store a content hash per chunk as payload/metadata. On each deploy, re-chunk the pages, hash each chunk (heading path + text), and only upsert chunks whose hash changed, then delete IDs that no longer exist. Using a deterministic ID like hash(url + heading) means re-runs are idempotent, so you never end up with duplicate vectors. On Upstash that also keeps you far below the daily write cap, since a typical edit touches two or three chunks rather than the whole site. I'd also log every question that returns a low top score; that list is the best guide to which pages need rewriting or extra chunks.