Roast my SQLite encryption at-rest
SQLite encryption at-rest is a hot requested feature of both the “default” CGo driver [1] and the transpiled alternative driver [2]. So, this is a feature I wanted to bring to my own Wasm based Go driver/bindings [3]. Open-source SQLite encryption extensions have had a troubled last few years. For whatever reason, in 2020 the (undocumented) feature that made it easy to offer page-level encryption was removed [4]. Some solutions are stuck with SQLite 3.31.1, but Ulrich Telle stepped up with a VFS approach [5]. Still, their solution seemed harder than something I'd want to maintain, as it…
Roast my SQLite encryption at-rest launched on April 30, 2024 with 99 votes, #537 of 4,347 launches that month and more than 90% of that year's launches. The site was still online in September 2026, 2 years on.
In plain words
This is a WebAssembly-based Go driver and bindings for SQLite that adds encryption-at-rest functionality. The maker implemented full disk encryption using Adiantum tweakable encryption to protect SQLite databases, addressing a common feature request for Go SQLite drivers. The solution avoids the complexity of VFS-layer encryption by encrypting at the disk level instead.
written from the facts on this page · September 2026
From the sources
Go bindings to SQLite using wasm2go. Contribute to ncruces/go-sqlite3 development by creating an account on GitHub.
In the maker’s words, at launch
SQLite encryption at-rest is a hot requested feature of both the “default” CGo driver [1] and the transpiled alternative driver [2]. So, this is a feature I wanted to bring to my own Wasm based Go driver/bindings [3]. Open-source SQLite encryption extensions have had a troubled last few years. For whatever…
Does a similar job
all alternatives →
My Go SQLite driver did poorly on a benchmark, so I fixed it2023 · github.com · ▲234https://github.com/ncruces/go-sqlite3 was doing poorly on this benchmark that was posted yesterday to HackerNews [1]. With the help of some pprof, I was able to trace it to a serious performance regression introduced two weeks ago, and come up with the fix (happy to field questions, if you're interested in the nitty gritty). It's not the fastest driver around, but it's no longer the slowest: comfortably middle of the pack. It's based on a WASM build of SQLite, and thanks to https://wazero.io doesn't need CGO. [1]:…
(bits) of a Libc, Optimized for Wasm2025 · github.com · ▲78I make a no-CGO Go SQLite driver, by compiling the amalgamation to Wasm, then loading the result with wazero (a CGO-free Wasm runtime). To compile SQLite, I use wasi-sdk, which uses wasi-libc, which is based on musl. It's been said that musl is slow(er than glibc), which is true, to a point. musl uses SWAR on a size_t to implement various functions in string.h. This is fine, except size_t is just 32-bit on Wasm. I found that implementing a few of those functions with Wasm SIMD128 can make them go around 4x faster. Other functions don't even use SWAR; redoing those can make them 16x faster.…
Google Drive to SQLite2022 · simonwillison.net · ▲305Here's the repo: https://github.com/simonw/google-drive-to-sqlite The README is using a trick I'm increasingly leaning on: parts of that document - the --help output and the example database schema - are automatically generated using Cog: https://nedbatchelder.com/code/cog and https://til.simonwillison.net/python/cog-to-update-help-in-r...
Reduce SQLite database size by up to 80% with transparent compression2022 · github.com · ▲420Transparent dictionary-based row-level compression for SQLite - phiresky/sqlite-zstd
Securely Handle Encryption Keys in Go2017 · github.com · ▲119Software sandbox for storage of sensitive information in memory. - awnumar/memguard
Sqinn-Go is a Golang library for accessing SQLite databases in pure Go2023 · github.com · ▲113Golang SQLite without cgo. Contribute to cvilsmeier/sqinn-go development by creating an account on GitHub.
More dev tools this month
the category →

open-source IDE for thoughtful software design. Contribute to devdotfast/whiteboard development by creating an account on GitHub.
Dev tools · 27d ago · github.com

Contribute to reladraw/reladraw development by creating an account on GitHub.
Dev tools · 25d ago · github.com
OpenBot▲362Grok Bot alternative: free, local, open-source, multiplayer
Dev tools · 22d ago · openbot.run
Talanoa▲340Hi HN, I’m a fullstack developer, and honestly, I’ve lost count of how many side projects I’ve worked on over the years. But one idea kept coming back to me: a different kind of email client. It first came to me in 2014: “What if we could handle emails more like conversations?” Every year, I’d revisit this concept in my “Build Notes.” Ten years later, no one had built exactly what I had in mind — so I finally decided to do it myself. That’s how Talanoa was born. I wanted something focused on people, not timelines. I was tired of marking messages as unread just to remember to reply later, or…
Dev tools · 20d ago · talanoa.email
CoreSpeed▲332One MCP for everything your agents need: apps, memory, tools
Dev tools · 27d ago · corespeed.io
Source: Show HN post ↗ · launch text quoted in part
Launched alongside, April 2024
the whole month →
Supabase▲2,325The Postgres developer platform is now generally available
Dev tools · 2024 · supabase.com
Cal.com Platform▲1,601Build your pixel-perfect booking experience with Atoms
Dev tools · 2024 · cal.com

deco.cx 2.0▲1,078Build web apps 10x faster with Deno, JSX, TS & Tailwind
Dev tools · 2024 · decocms.com

