📦ShayanAbbas1 / dbdelve
← 返回首页
Fast and lightweight DB Client made in Rust and GPUI.
⚖️ GPL-3.0#database#dbclient#developer-tools#gpui#local-first🌐 dbdelve.github.io📅 创建于 2026-08-17🔄 更新于 2026-10-31

📄 仓库 README

在 GitHub 查看 ↗
来自 GitHub 仓库自述文件 · 版权归原作者所有

DBDelve

A fast, native, cross-platform, multi-engine database client. Written in Rust with GPUI, no Electron and no JVM: instant startup, friendly on your memory, and smooth scrolling through large tables where other clients crash or introduce limits.

Early days. Everything listed below works today.

DBDelve in Gruvbox Dark Glass: a SELECT on the events table in the editor and its result grid below

DBDelve in Gruvbox Light Glass: a join in the editor and its result grid below

Scrolling a million rows:

https://github.com/user-attachments/assets/6e15d566-a110-46c6-a236-52af7d877d4c

Launching, with the last results already there:

https://github.com/user-attachments/assets/9e55da56-8577-43e0-812a-c77eb5d0e701

Why

I wanted something which is performant, modern and consumes little ram. The existing DB clients are either filled with bloat (Electron and JVM) or paid. This is an alternative to them. No feature is ever going behind a paywall and with time we will have complete parity on features with those too.

Install

macOS (Apple Silicon, macOS 12 or later):

brew install --cask ShayanAbbas1/dbdelve/dbdelve
xattr -dr com.apple.quarantine /Applications/DBDelve.app

Don't skip the second line: the app isn't notarized, so macOS won't open it until the quarantine flag is cleared.

Linux (x86_64 or aarch64): yay -S dbdelve-bin from the AUR, or the tarball or AppImage from the latest release.

Windows (x86_64): unzip the zip from the latest release and run dbdelve.exe.

Updating, the .dmg, Linux requirements, building from source and where your data lives are all in docs/install.md.

Supported databases

Postgres, MySQL, MariaDB, SQLite, Turso, DuckDB, Snowflake, SQL Server, MongoDB, Redis (and Valkey, KeyDB, Dragonfly) and ClickHouse.

More engines are planned.

The welcome screen: paste a connection URL or pick one of the engines, import from DBeaver or TablePlus, or pick a theme

What it does

  • Make it yours. The app's own themes alongside Catppuccin, Tokyo Night, Gruvbox and Dracula, each in dark, light and glass. Import themes from Zed or VS Code, or write your own.

The theme picker, with themes imported from Zed and VS Code and the import commands below them

  • Bring your connections with you. Import every saved connection, passwords and SSH settings included, from DBeaver, or TablePlus on macOS.
  • Organize your connections into projects, and jump to any of them from the palette.

The palette scoped to connections, grouped into two projects, with the current connection marked

  • Never mistake prod for staging. Every connection is isolated and can color the title bar. Run it read-only, read-write or with full access, and DBDelve asks before anything destructive.

The connection form, grouped into connection, security and behaviour, with a color and a project for the connection

  • Edits you can read first. Change a cell and DBDelve writes the UPDATE for you to check before it runs.
  • Keep the columns you need. Hide or pin columns, and the layout survives a restart.
  • Read a row in full in the row panel, with JSON highlighted, and edit long values there.

A table open in the grid, with the row panel showing one row's values and its JSON highlighted

  • Import rows from CSV, TSV or JSON, with every row checked and every statement shown before anything runs.

Importing events.csv: format options on the left, each file column mapped to a table column, and a preview of the rows

  • Open a data file by dropping it on the window: a CSV, Excel, Parquet or JSON file opens in DuckDB, held in memory, as a query you can change. A .sql file opens in a new query tab on the connection you're on, and runs only when you run it.

  • See the query plan highlighted in its own pane, with bad row estimates called out.

An Explain Analyze plan for a join: each node with its actual and estimated rows and time, and a ×76 misestimate flagged

  • Completion that knows your schema: tables, and a table's columns after its name and a dot.

Completing accounts. to its columns in a join

  • Keyboard-first. One palette for commands, tables, saved queries, history and connections, and every shortcut rebindable.

The Shortcuts page in Settings: every action with its key binding and an Edit button

  • Your SSH, not a reimplementation. Tunnels run through your own ssh, so your config, agent and hardware keys just work.

Free and open source, nothing behind a paywall, and no telemetry: the only request DBDelve makes on its own is an update check, which you can turn off.

Benchmarks

DBDelve 0.3.6 against DBeaver 25.3.1 on the same Postgres table, median of 5 runs each (2026-10-11, M1 Pro, 32 GB):

DBDelve DBeaver
Launch 1.1 s 5.2 s
Idle memory 133 MB 606 MB
1,000-row query 0.21 s 1.96 s
1M rows, time 56 s 208 s
1M rows, memory* 4.9 GB 17 GB

* The whole 1M-row table pulled into memory on purpose, with the row limit off. Method and full results in BENCHMARKS.md.

Community

Ideas and discussion on Discord.

License

Copyright (C) 2026 Shayan Abbas and contributors, licensed under the GPL-3.0. Code contributed before the switch was released under the MIT License, and that notice still applies to it. Third-party font and theme licenses are in NOTICES.md.

📈 近 7 天 Star 趋势

每日新增 Star(柱)与累计 Star(线)· 数据来自 GitHub

🏆 排名变化趋势

在各榜单中的排名历史(数字越小越靠前)

📋 历史上榜记录

每次快照的详细数据
日期 榜单 排名 周期新增 总 STAR