SQLite Xplore
A fast, lightweight SQLite database viewer for VS Code. Opens multi-gigabyte databases instantly by reading only the pages it actually needs, no matter how large the file is.

Features
- Instant opens on huge files: a custom lazy-loading VFS reads only the SQLite pages a query touches, backed by an LRU block cache. A 20GB database opens as fast as a 20KB one.
- Sort & filter: click a column header to sort (click again to reverse, click the ✕ to clear); type in the filter row under any column for a substring match, or use
>, >=, <, <=, !=/<> for comparisons.
- Pagination: browse in fixed-size pages (jump to any page directly) or switch to continuous virtualized scrolling.
- Schema map: a visual ER diagram of every table, its columns, and the foreign-key relationships between them, with pan/zoom.
- Resizable columns and sidebar, copy-to-clipboard on any cell, and a Refresh Data button that picks up changes made to the file by another program.
- Theming: matches your VS Code color theme by default, or pick Light, Dark, or System independently.
- Works in desktop VS Code and the web (vscode.dev, github.dev).


Supported file types
.sqlite, .sqlite3, .db, .db3, .sdb, .s3db
These files open automatically in SQLite Xplore. If another extension is already registered as the default for one of these extensions, use Open With → SQLite Xplore once and VS Code will remember your choice for that file type going forward.

Read-Only
This is a viewer, not an editor: no query runner, no cell editing, no schema changes. It only ever reads the file.
Editing capabilities might be added in a future version.
Known Limitations
- Sorting a very large table on a column with no index requires SQLite to sort the whole matching result set before returning even the first page. This is an inherent SQL cost, not something the extension can shortcut, and it currently repeats per page rather than being cached across page loads.
- Jumping to a far-away page in a large, unindexed, sorted result is slower than sequential paging for the same reason.
Architecture
Under the hood this runs wa-sqlite (a WebAssembly build of SQLite) directly in the webview, backed by a custom VFS that services page reads over postMessage round trips to the extension host, which does the real random-access file I/O. Everything else, the virtualized grid, the schema diagram, the UI, is hand-rolled vanilla TypeScript with no UI framework, kept deliberately small.
Reporting issues
Found a bug or have a feature request? File it at github.com/jaxendutta/sqlite-xplore-feedback.
License
MIT