// sqlly vs dbx

SQLly vs DBX

DBX is an open-source database client that went from a first commit on 29 April 2026 to around 9,300 commits and 28,000 GitHub stars six months later. Like SQLly, it has a Rust core. Unlike SQLly, its interface is a Vue web app running in the operating system’s own browser engine. That one decision explains most of the differences below, from download size to how each app draws a million-row grid. Here’s the honest breakdown, with our own measurements where we have them.

Last reviewed: October 2026, against DBX 0.6.62 and SQLly 1.27

The short version

SQLly

A native workbench that goes deep

One Rust codebase that draws its own interface on the GPU (Metal, Direct3D, Vulkan). Thirty engines connect natively, and the effort goes into depth: completions from real column values, plan findings in plain language, layered safety guardrails, and results that stream to disk instead of filling memory.

DBX

One free tool for everything with a port

Apache 2.0, no paid edition. A Tauri 2 app: Rust drivers underneath, Vue 3 and CodeMirror 6 on top, in the system webview. More than 100 data sources, message-queue consoles, a signed plugin store, an MCP server and CLI, and the same app as a Docker-hosted web version. Pre-1.0 and shipping roughly 50 commits a day.

Size, measured

DBX’s README leads with “100+ databases in 25 MB”. We downloaded both current releases on 30 October 2026 and measured. Sizes are decimal megabytes, straight from each project’s download page.

Download and install sizes of SQLly 1.27 and DBX 0.6.62
File SQLly 1.27 DBX 0.6.62
macOS download (Apple Silicon) 65.6 MB dmg 45.2 MB dmg
macOS app binary, installed 195.8 MB 80.4 MB
Windows x64 download 60.9 MB zip 33.9 MB installer (uses the WebView2 already in Windows) · 44.6 MB portable zip · 251.7 MB offline installer
Linux x64 download 76.2 MB tarball 49.0 MB deb · 123.3 MB AppImage (bundles WebKitGTK)

Where SQLly’s extra size comes from, inside the two macOS binaries:

Breakdown of the SQLly and DBX macOS binaries
Part of the binary SQLly DBX Why they differ
Machine code 106.0 MB 56.9 MB SQLly compiles in DuckDB’s C++ engine and its own GPU renderer, and optimizes for speed. DBX runs DuckDB as a separate helper, leaves rendering to the webview, and optimizes for size.
Symbol table 52.6 MB 0.7 MB SQLly keeps function names in the binary so a crash backtrace is readable. DBX strips them.
Unwind tables 15.1 MB 0.1 MB DBX aborts on a panic. SQLly unwinds, so a failing background task can be caught and reported instead of closing the app.
Constant data 13.3 MB 17.7 MB DBX’s whole Vue interface lives here as JavaScript and CSS.

The symbol table is the easy part. Stripping it from a copy of SQLly 1.27 took the installed binary from 195.8 MB to 146.9 MB, but the compressed download only shrank by about 6 MB, because function names compress very well. The rest of the gap is the price of drawing the interface ourselves and bundling DuckDB, and we think it buys real things, covered next.

Performance and architecture

Both apps keep their database drivers in Rust, so neither pays for a Java or Node.js runtime on the query path. The difference is everything between the driver and your screen. We have not yet run a side-by-side benchmark of the two apps, so this section describes how each one is built and what that predicts, not a stopwatch result.

Architecture comparison of SQLly and DBX
SQLly DBX
Interface Rust, drawn on the GPU by GPUI. No browser engine anywhere. Vue 3 and Tailwind in the system webview: WebKit on macOS, WebView2 on Windows, WebKitGTK on Linux.
Path from driver to grid In-process. Rows go from a dedicated engine thread through a bounded queue to the grid painter. Rows cross the Tauri bridge from Rust into JavaScript (DBX ships MessagePack and CBOR codecs for it), then into a virtual-scrolled grid.
Very large results Streams with backpressure, then spills to a typed disk file past 50,000 rows or 64 MiB, so memory stays flat at 50 million rows. Streaming Virtual scrolling with pagination controls.
Processes One app process. The app plus the webview’s own content processes, and helper processes for DuckDB, plugins and the optional JDBC agent.
Editor SQLly’s own Rust editor and SQL parser. A 0.5 MB script edits at about 5 ms per keystroke. CodeMirror 6, with metadata-aware completion and diagnostics.
Looks the same on every OS Yes. The same renderer on every OS. Mostly. Rendering, fonts and performance follow whichever webview each OS provides.

Feature by feature

SQLly’s column uses the same honest status badges as the features page and the docs. For DBX we list what its own README and documentation state.

Feature comparison of SQLly and DBX
Capability SQLly DBX
Runs on macOS, Windows & Linux YesmacOS is signed and notarized; Windows and Linux are a supported beta. YesPlus Homebrew, Scoop, WinGet and Flatpak packages.
Intel Macs & older Windows NoThe macOS build targets Apple Silicon. YesIntel Mac builds, and a dedicated Windows 7 / Server 2012 R2 installer.
Free to use Free tierTwo saved servers, one cloud account, and a reminder to pay about every five hours. Pricing YesEvery feature, any team size.
Open source NoLifetime licenses carry a source-escrow promise if SQLly is ever discontinued. YesApache 2.0.
Self-hosted web version NoA desktop app. The browser preview is a demo; remote databases are reached through the bridge and relay. YesThe same app as a Docker image with a password-protected login.
SQL Server, PostgreSQL, MySQL, MariaDB, SQLite YesPlus hosted and compatible engines - 30 in all. Full list Yes
DuckDB, ClickHouse, Oracle, libSQL/Turso YesNative drivers; DuckDB is bundled in the app. YesDuckDB runs as a separate helper process.
Snowflake, BigQuery, Db2, Trino & friends PlannedModeled in SQLly’s engine profiles; live connectors still to come. YesThrough its JDBC agent, a separate Java-based driver host.
MongoDB, Elasticsearch & vector databases No YesMongoDB document editing, Elasticsearch, Meilisearch, CouchDB, Qdrant, Milvus, Weaviate and more.
Message queues & service registries No YesKafka, RocketMQ, RabbitMQ, Pulsar, MQTT, Nacos, Consul, ZooKeeper and etcd consoles.
Redis YesTyped key editing, Cluster and Sentinel, ACLs, pub/sub, profiler and memory analyzer. Redis YesKey search, batch operations, TTL editing and every data type.
Autocomplete YesSchema, plus real column values, JOIN ON from foreign keys, auto-aliases and plain-language dates. IntelliSense YesMetadata-aware completion with diagnostics.
AI assistant YesLocal models (Ollama, MLX), your own endpoint, or cloud providers you opt into, with no default provider; answers cite the schema they used. Intelligence YesGenerate, explain, optimize and fix SQL with Claude, OpenAI, local or compatible models, behind safety checks.
MCP server & CLI YesAgent queries pass the same select-only checks as the app. Select-only YesSeparate npm or native packages, with read-only, read/write and full-access modes.
Edit table data YesA row editor generated from the table’s own metadata. Row editor YesInline grid editing with a SQL preview before saving.
Pivot, chart & computed columns in results YesDriven by one-line comments that travel with the query. Directives -
ER diagrams YesExport to SVG, Mermaid, or DBML. Relationship Graph Yes
Execution plan viewer In progressPlain-language findings, tree, diagram and side-by-side comparison. Query plans YesA visual explain plan.
Schema & data compare YesAcross connections and engines, risk-graded, with sync and rollback scripts. Schema Compare YesSchema diff and data compare, plus column-level field lineage.
Import, export & data transfer YesCSV, JSON, Excel with live formulas, SQL; cross-engine transfer with type mapping. Data transfer YesCSV and Excel import, five export formats, cross-database transfer, full dumps.
Server monitoring & admin YesActivity Monitor with blocking chains, Server Dashboard, backup and restore, SQL Agent, index analyzer. Tools -
Safety guardrails YesRead-only connections, a hard stop on UPDATE/DELETE with no WHERE, auto-wrapped transactions, inherited per environment. Safety PartialConfirmation dialogs for destructive operations, and color-coded connections.
Connection import YesFrom DataGrip, DBeaver, TablePlus, Navicat and Redis Insight, plus SQLly’s own credential files. YesFrom DBeaver and Navicat.
Plugins No YesSigned, sandboxed plugins from a built-in store, with Go and TypeScript SDKs.
Interface languages 2English and Spanish. 3English, Simplified Chinese and Spanish.

A dash means we couldn’t confirm it from DBX’s own materials - check its documentation for the current state.

Where SQLly is different

DBX goes wide. SQLly spends the same effort going deep on fewer engines.

Native all the way down

There’s no browser engine between the driver and the pixels, so the app behaves the same on every OS and never depends on which webview version a machine has. Large results stream and spill to disk, so memory stays flat whether a query returns 50 rows or 50 million.

Spill-to-disk results →

Autocomplete that knows your data

Beyond schema completion, SQLly pulls a column’s real distinct values into a WHERE clause, writes a join’s ON clause from actual foreign keys, and reads dates typed the way you say them.

IntelliSense →

Guardrails you set once

Read-only connections that refuse file-reading and shell-escape tricks, a hard stop on UPDATE/DELETE with no WHERE, auto-wrapped transactions, and prod painted red, inherited down your client, project and environment tree.

Safety & guardrails →

Admin tools as reviewable SQL

Activity monitor, backup and restore, schema and data compare, index analyzer and SQL Agent live under one Tools menu. Anything destructive opens as SQL in a tab for you to read before it runs.

Tools →

Comments that shape results

A one-line SQL comment can pivot a result, chart it, add Excel-style computed columns or lock the grid layout, and it travels with the query so the next run looks the same.

SQLly directives →

Remote access without opening ports

The SQLly bridge sits next to a private database and the relay connects you to it end to end encrypted, so a team can reach a database behind a firewall without a VPN or a hosted web app.

Remote access →

When DBX is the better choice

DBX is a strong project, and for plenty of people it’s the right pick. Choose it if:

  • You work across far more than SQL. MongoDB, Elasticsearch, vector stores, Kafka, RabbitMQ and service registries all sit in one tool. SQLly covers relational, analytical and Redis engines only.
  • You need Snowflake, BigQuery, Db2 or another JDBC-only database today. DBX’s agent reaches them now; SQLly’s connectors for those are still planned.
  • Open source, or free at any company size, is a requirement. DBX is Apache 2.0 with nothing held back.
  • You want a hosted web version for a team. DBX runs the same app from a Docker image.
  • You’re on an Intel Mac or an old Windows server. DBX ships for both; SQLly doesn’t.
  • You want plugins. DBX has a signed plugin store and SDKs; SQLly has no plugin system.
  • Download size matters most. DBX’s standard downloads are 20 to 27 MB smaller than SQLly’s on macOS, Windows and Linux.

One caveat in the other direction: DBX is pre-1.0 and changes daily, so check its repository for the current state of anything that matters to you.

Questions

Why is DBX smaller than SQLly if both are written in Rust?

Only DBX’s back end is Rust. Its interface is a Vue web app that runs in the browser engine the operating system already ships, so no renderer goes in the download. SQLly draws its whole interface itself on the GPU, compiles DuckDB into the app, and currently ships its symbol table so crash backtraces name functions. On Apple Silicon the DBX app binary is 80.4 MB and SQLly’s is 195.8 MB; the macOS downloads are 45.2 MB and 65.6 MB.

Is DBX free?

Yes. DBX is open source under the Apache 2.0 license with no paid edition, supported by sponsors and donations. SQLly is free for hobbyists, with SQLly 1.x and Lifetime licenses for everyone else.

Which connects to more databases, SQLly or DBX?

DBX, by a wide margin. It lists more than 100 data sources, many through a Java-based JDBC agent, including MongoDB, Elasticsearch, vector databases, Snowflake and BigQuery, plus consoles for Kafka, RabbitMQ and other message queues. SQLly connects to 30 engines natively, relational, analytical and Redis, and spends its effort on depth per engine.

// try it yourself

Wide or deep

DBX connects to almost everything; SQLly tries to know your data once it’s connected. Take the pig for a spin - free on macOS, Windows, and Linux, no account required.