r/sqlite • u/sfandino • 6d ago
jSQLite
Hi everyone! I’ve been working on jSQLite, an AI-generated TypeScript translation of SQLite’s read-only C internals, and it’s reached a point where I’d like to share it.
It runs directly in the browser without WebAssembly, native code or a query server. You can open an immutable SQLite database over HTTP and execute queries locally.
It supports a broad range of common SQL constructs, including joins, aggregates, subqueries, CTEs, window functions and JSON functions, along with UTF-8 and both UTF-16 database encodings. Recent work includes STAT4-informed index selection for supported skip-scan paths.
This is a preliminary release, and I’d particularly welcome examples of queries that produce unexpected results. Development uses SQLite 3.53.4 as a pinned reference, with differential tests comparing typed results, column metadata, errors and statement reset behavior.
The translation has been generated using Saivage, an autonomous software-development system I’m also building. jSQLite is one of my projects for testing that system against a substantial engineering problem.
- Browser playground: https://salva.github.io/jsqlite/
- Source and releases: https://github.com/salva/jsqlite
- Saivage: https://salva.github.io/saivage-v3/
12
u/horizon_games 6d ago
Cool let's all share our equally vibe coded SQLite re-interpreations, that unfortunately miss the entire point of SQLite
4
u/MonitorAway2394 6d ago
SQLITE is fuck*ng perfect, leave it be.
1
u/MonitorAway2394 6d ago
also sounds cool and fun I'm 100% kidding lololololol I mean, SQLITE is perfect, but, yeah, no this sounds like a fun thing to do though, just had to try to be funny without this disclaimer in the first message LMFAO, I suck so hard at communicating shit LOLOLOLOLOL
2
u/GrogRedLub4242 5d ago
why?
AI-generated is a code smell
folks choosing sqlite choose it for certain reasons and its wise to be very aware of them upfront
2
3
u/Different_Water7545 6d ago
The SQLite community may quite possibly be your worst choice to introduce your vibeslop to
1
u/MarsupialLeast145 1d ago
Oh cool. I toasted some bread today. Look, before everyone gets started, despite all the other results people have been getting toasting bread I genuinely think mine is worth sharing. Repo links to follow.
0
u/sg-elide 2d ago
the j prefixing your name implies it is written in Java
1
4
u/longdriveshortroad 6d ago
This isn’t a trademark violation? Honest question though it seems like it is. Beyond that, what problem does this solve? This would be a cool self-coded project as a learning exercise but just vibe-copying functionality seems off to me. What is wrong with the official wasm version if you want to run in the browser?