Go 1.26+ Wails v3 React + TypeScript GPL-3.0

A fast, local-first SQL workbench

No cloud. No accounts. No telemetry.
Just a focused, native desktop tool for working with
SQLite, PostgreSQL and MySQL / MariaDB.

Free & open source Β· Windows Β· macOS Β· Linux

XenSQL editor with schema-aware autocomplete, streaming results grid and JSON viewer
🧳 Portable
⚑ Fast startup
πŸ”’ Local-first
🧠 Developer-focused
πŸ”„ Auto-updating

SQL tools are usually overkill. XenSQL isn't.

Most SQL tools today are heavy Electron apps, cloud-connected by default, tied to subscriptions, and overloaded with features you don't use. XenSQL focuses on one thing: a fast, local environment for working with databases.

⚑ Native, not Electron

Built with Go and Wails v3, the UI runs in the OS webview - WebView2 on Windows, WebKit on macOS, WebKitGTK on Linux. No bundled Chromium.

πŸ”’ Yours, entirely

Everything runs and stays on your machine. No account, no sign-in, no telemetry - your connections and queries never leave your computer.

🧳 Portable by design

All data lives in a single XenSQL-data/ folder next to the executable. Move it to a USB stick or another PC and it just works.

πŸ§ͺ Battle-tested

Backed by an extensive Playwright end-to-end suite covering the editor, transactions, results grid, exports, schema explorer and table editing against real PostgreSQL, MySQL and MariaDB instances.

Supported databases

🐘 PostgreSQL
  • Read & write + read-only mode
  • SSL: require / verify-full
  • Powered by pgx
🐬 MySQL / MariaDB
  • Read & write + read-only mode
  • TLS transport
  • Powered by go-sql-driver
πŸͺΆ SQLite
  • Read & write + read-only mode
  • Local file with picker workflow
  • Pure-Go driver (modernc.org/sqlite)

Everything you need. Nothing you don't.

🧠 SQL Editor

Tabbed Monaco-powered workspace with session restore, smart schema-aware autocomplete, snippets, SQL formatting, gutter run icons and remappable shortcuts.

πŸ“œ Multi-statement scripts

Run several ;-separated statements at once on a single connection - temp tables, SET and scripted transactions hold. Each result set gets its own tab.

πŸ“Œ Pinned transactions

Run BEGIN / COMMIT / ROLLBACK as SQL or from the toolbar. Queries run inside the open transaction, per tab, until you commit or roll back.

🌊 Streaming results

Rows render as the driver yields them, in a virtualized grid that scrolls smoothly over thousands of rows. Stop long-running queries with one click.

πŸ—ƒοΈ Schema Explorer

Tree view of schemas, tables and columns with instant search. Double-click a table for a SELECT, Ctrl+double-click to browse and edit its data.

✏️ Edit data in the grid

Inline-edit cells, insert rows and bulk-delete - no hand-written UPDATE. Changes are staged and applied on demand, guarded by primary keys and read-only mode.

πŸ” Cell & JSON viewers

A cell editor for large values - JSON, XML, HTML, or plain text with beautify/minify - plus a side JSON row viewer with filter and regex search.

πŸ“€ One-click export

CSV, JSON, Markdown, or SQL INSERT. Export all or selected rows and columns, copy to clipboard or save to file. Remembers your last format.

πŸ“š Query library & history

Save, rename, filter and reuse queries with dirty-state tracking, plus per-connection history with success/error status and duration.

πŸ”Œ Connection manager

Create, test and organize connections into drag-and-drop folders, with per-connection tab colors and a defense-in-depth read-only mode.

⌨️ Keyboard-first

Quick Search palette (Ctrl+P) jumps to connections, saved queries, history and tabs. Every shortcut is remappable in the in-app editor.

🌍 Polished UX

Dark & light themes, English / Deutsch / Π‘ΡŠΠ»Π³Π°Ρ€ΡΠΊΠΈ, frameless native title bar, window state persistence and one-click auto-updates with changelogs.

Screenshots

Click any screenshot to view it full size.

Download

No account required - just download and run.

All builds and checksums are on the latest release page. Prefer to build it yourself? wails3 task build - see the README.

🧳 Portable by design

Everything lives in a single XenSQL-data/ folder created right next to the executable - connections, editor session, history, saved queries and settings. Move it to a USB stick, a network drive, or another PC and it just works.

If the app lives in a read-only location, it falls back to the OS per-user data directory. You can always override the location with XENSQL_DATA_DIR.

XenSQL(.exe)
XenSQL-data/
  connections.json
  editor_session.json
  query_history.json
  saved_queries.json
  settings.json

Ready to try XenSQL?

Free, open source and yours to keep - on Windows, macOS and Linux.