Analysis updated 2026-07-03
Publish a searchable dataset on GitHub Pages without a backend by hosting a SQLite file and querying it from JavaScript.
Let users filter or search thousands of records in the browser by fetching only the indexed chunks of a static database file.
Build a read-only data explorer for statistics or records that loads instantly on free static hosting with no server costs.
| phiresky/sql.js-httpvfs | codeforreal1/compresso | varharrie/varharrie.github.io | |
|---|---|---|---|
| Stars | 3,677 | 3,677 | 3,677 |
| Language | TypeScript | TypeScript | TypeScript |
| Setup difficulty | moderate | easy | moderate |
| Complexity | 3/5 | 1/5 | 2/5 |
| Audience | developer | general | developer |
Figures from each repo's GitHub metadata at analysis time.
Requires preparing and optimizing the SQLite file with the right index structure and page size before hosting.
sql.js-httpvfs is a TypeScript library that lets you host a SQLite database as a static file and query it directly from a web browser, without downloading the entire database file first. SQLite is a common format for storing structured data in a single file. Normally, running queries against it in a browser would require either a server to answer queries or downloading the whole file upfront. This library avoids both by using HTTP Range requests, a standard way of asking a web server to send only a specific portion of a file. When a browser runs a query, the library figures out which parts of the database file are needed to answer it, fetches only those chunks over the network, and runs the query locally using SQLite compiled to run in the browser. For queries that hit good database indexes, this can mean fetching just a few kilobytes rather than the whole file. The library includes logic to speed up fetching when it detects sequential reads. The practical use case is publishing a read-only dataset, such as a collection of records or statistics, on a free static hosting service like GitHub Pages, without needing a backend server or database. A developer prepares the SQLite file, uploads it, and then queries it from JavaScript in the browser. The README includes guidance on optimizing the database before hosting, covering index structure, page size, and splitting large files into chunks. The library works inside a Web Worker and requires WebAssembly support in the browser. The author notes it was built primarily for small personal projects and demonstrations, and that the virtual file system layer has no automated tests. For more production-oriented needs, the README points to related projects that take different approaches to in-browser SQLite. The project is available as an npm package.
A TypeScript library that lets you host a SQLite database as a static file and run SQL queries on it from the browser by fetching only the needed chunks over HTTP.
Mainly TypeScript. The stack also includes TypeScript, SQLite, WebAssembly.
License details not mentioned in the explanation.
Setup difficulty is rated moderate, with roughly 1h+ to a first successful run.
Mainly developer.
This repo across BitVibe Labs
Verify against the repo before relying on details.