←back to thread

Sqlite3 WebAssembly

(sqlite.org)
506 points whatever3 | 7 comments | | HN request time: 0.456s | source | bottom
1. chrysoprace ◴[] No.41853741[source]
I've been really interested in the local-first landscape lately but embedding SQLite seems really heavy-weight compared to using the browser's built-in storage APIs (in particular, IndexedDB) and it seems to be what most of the main open source libraries do. I'm interested to see a open-source solution (with sync) which provides an SQLite-like API but for the browser's native storage rather than trying to embed another executable in Web Assembly.
replies(3): >>41854044 #>>41854825 #>>41855967 #
2. jamesgpearce ◴[] No.41854044[source]
Disclaimer: I'm the author. But you might be interested in TinyBase.
replies(2): >>41854213 #>>41855339 #
3. chrysoprace ◴[] No.41854213[source]
Thanks I'll give it a look! I guess I really was fishing for someone to make a recommendation and I see you have a lot of backend persistence options which I'm very excited about.

Another issue I have with a lot of the new local first products is that they tend to lock you into a particular database type on the backend, so this is refreshing.

4. gavmor ◴[] No.41854825[source]
SQL is, arguably, more ergonomic than IndexedDB APIs, and may take up less RAM/CPU when, eg, using a `WHERE` clause rather than an `if() ` filter.
replies(1): >>41856054 #
5. arunaugustine ◴[] No.41855339[source]
TinyBase looks very promising! Is there a doc or reference you can guide me to, for using TinyBase with Preact.js instead of React?
6. ◴[] No.41855967[source]
7. chrysoprace ◴[] No.41856054[source]
It's definitely more ergonomic, but the browser doesn't have an SQL API where as it does have IndexedDB. I'm hoping for tooling that makes IndexedDB more ergonomic while having a local-first syncing solution.

Dexie gives an ORM-like experience but their syncing solution is not FOSS.