VS Code extension · v0.1.0

A full-featured SQLite editor, right inside VS Code.

Click any .db file and browse, edit, query, and export it in place — like a phpMyAdmin for SQLite. No native dependencies, no telemetry. Free.

  • Free
  • No telemetry
  • Zero native deps
  • Win · macOS · Linux
chinook.db — SQLitePad
SQLitePad browsing and editing a database table in VS Code
01 / Why SQLitePad

A real editor, not just a viewer.

/01

It just works

SQLite runs as WebAssembly with file I/O through a Node VFS — no native binaries, nothing to compile, no “module failed to load”. Identical on Windows, macOS, and Linux.

/02

A true editor

Inline cell editing, row insert / delete / duplicate, CSV import, a SQL runner, and undo. Every editing feature is included — free.

/03

Fast

A canvas-rendered grid handles 100k+ row tables smoothly, with virtualized scrolling, sorting, and paging. Writes go to the file page by page — big databases are never fully loaded into memory.

/04

AI-ready

Copy a whole schema as Markdown, or export any table as a SQL dump — ready to paste straight into your favorite assistant.

/05

Private by design

No telemetry, no tracking, no network calls. Your databases never leave your machine.

02 / Screenshots

See it in action.

SQL query runner with syntax highlighting and per-statement results
SQL query runner — syntax highlighting, autocompletion, per-statement results.
Per-column filters and bulk editing in the data grid
Filters & bulk edit — per-column filters, quick search, multi-row edits.
Row detail panel with JSON pretty-printing and BLOB preview
Row details — JSON pretty-printing, BLOB / image preview, FK navigation.
The main data grid browsing and editing rows
Data grid — sort, pin, resize; edits committed transactionally to the file.
03 / Features

Everything, included.

Eleven things SQLitePad does, all free.

Open by clicking

.sqlite, .sqlite3, .db, .db3 and .s3db files open directly in the editor — no command-palette dance.

Full editing

Inline cell editing with type-affinity coercion, insert via a form panel, delete, set NULL with Del — every change committed immediately and transactionally.

SQL query runner

CodeMirror editor with theme-aware highlighting and schema autocompletion; multi-statement scripts, run-selection, per-statement timings; save a SELECT as a view in one click.

Filters & quick search

Per-column filters (=, contains, ranges, NULL/empty), right-click a cell to filter or exclude, plus a debounced box searching every column.

Foreign-key superpowers

Filter an FK column by searching the referenced table by name; jump to the referenced row; FK autocompletion in insert forms; preview columns remembered per database.

Import & export

Import CSV into tables (header matching, preview, single transaction); export tables or query results to CSV / JSON / Markdown / SQL dump — to a file or the clipboard.

Undo & history

A session audit log showing old → new values for every change; undo with Ctrl+Z or from the History tab. Updates, inserts and deletes are fully reversible.

Row details

A vertical field view for wide rows, JSON pretty-printing, BLOB hex preview with image detection (PNG/JPEG/GIF/WebP) plus download/replace, and inline FK previews.

Schema view

Columns, primary keys, foreign keys, indexes, and pretty DDL — copy the whole schema as Markdown.

Safe by default

Read-only toggle, modal confirmation for multi-row deletes, external-change detection with a refresh banner, WAL databases handled via exclusive locking.

Remembers your layout

Column widths, pinned columns, and FK preview choices persist per database.

Lightweight

One focused extension, no paid tiers, no account — install and open a database.

04 / Usage

Getting around.

ActionHow
Open a databaseClick the file in the Explorer
SortClick a column header (asc → desc → off)
Edit a cellDouble-click it, type, Enter
Set NULLSelect cell(s), press Del
Insert a rowToolbar + Insert
Delete rowsSelect via row markers, press Del
Run SQLQuery tab, Ctrl+Enter
Save query as viewQuery tab → Save as view…
Filter via a foreign keyFK column header ▾ → search the referenced table
Lock the fileToolbar 🔒 Read-only
05 / Honest notes

Where the edges are.

  • !

    WAL-mode databases open with locking_mode=EXCLUSIVE (the WASM VFS has no shared memory), so other processes can't write while the editor holds the file.

  • !

    Editing needs a row identity: rowid tables and WITHOUT ROWID tables with a primary key are editable; views and exotic rowid-less results are read-only.

  • !

    BLOB values are viewed and replaced through the row detail panel, not inline in the grid.

  • !

    Not yet available in VS Code for Web — it reads and writes files directly on disk.

06 / Changelog

What's shipped.

v0.1.0Initial release
  • Custom editor for .sqlite / .sqlite3 / .db / .db3 / .s3db files.
  • Virtualized grid: sort, page, pin and resize columns, layout saved per database.
  • Inline editing, insert / delete / duplicate, with immediate transactional persistence.
  • SQL runner, foreign-key tools, schema view, CSV import and CSV/JSON/Markdown/SQL export.
  • Undo / history, read-only toggle, external-change detection, WAL support.
07 / Feedback

Found a bug? Got an idea?

SQLitePad's source is private, but bug reports and feature requests are very welcome — they're tracked publicly on GitHub. Pick a template and tell me what happened.