A lightning-fast database client that stays out of your way.
Install · Highlights · Features · Contributing
Most database clients are either bloated Electron apps that eat your RAM for breakfast, or outdated native tools stuck in 2005.
Saki is different.
Built native, not wrapped. Tauri v2 + Rust backend. Sub-second startup. Binary IPC for query results. Your database client shouldn't need more memory than your database.
Data-first interface. No flashy dashboards. No distracting chrome. The UI steps aside so your query results take center stage — virtual-scrolled, resizable, editable, filterable.
Multi-engine architecture. PostgreSQL and SQLite today, with Redis, MongoDB, DuckDB, and ClickHouse on the roadmap. The UI adapts automatically — tree depth, context menus, toolbar controls, and structure tabs all adjust based on what your engine supports.
Everything you need, nothing you don't. Query editor with autocomplete, data grid with inline editing, schema explorer, ERD viewer, export/import — all in one app that opens faster than your browser tab.
Full SQL editor powered by CodeMirror 6 — syntax highlighting, schema-aware autocomplete, SQL formatting, and multi-statement execution. Run everything, or just the statement at your cursor. Built-in EXPLAIN ANALYZE visualizer with table, tree, and raw views. Set per-query timeouts so runaway queries don't block your session.
Virtual-scrolled results table that handles thousands of rows without breaking a sweat. Resizable columns, click a cell to expand, double-click a row for full detail. Sort, filter with SQL conditions, edit inline — with full undo support and batch commits wrapped in transactions. Add rows, delete rows, all keyboard-friendly.
Browse your entire database structure in a hierarchical tree — databases, schemas, tables, views, materialized views, functions, sequences, foreign tables. Fuzzy search across everything. Right-click for quick actions: truncate, drop (with cascade), duplicate tables, export, and more.
Auto-layout entity relationship diagrams with row count estimates on each node. Pan, zoom, drag nodes, hover to highlight foreign key connections. Minimap for orientation. Toggle simplified mode, search tables, export to PNG or SVG. Double-click a table to jump straight to its data.
Everything Saki can do, at a glance.
| Feature | Description |
|---|---|
| Multi-statement execution | Run multiple statements in one go, navigate results with Alt+Arrow |
| Schema-aware autocomplete | Context-aware suggestions for tables, columns, and functions |
| SQL formatting | One-click beautify for messy queries |
| EXPLAIN ANALYZE | Table, tree, and raw views for query plans |
| Query cancellation | Cancel long-running queries via PostgreSQL cancel signal |
| Query timeout | Set per-query execution time limits |
| Saved queries | Promote any query from history to your permanent library |
| Query history | Auto-saved with execution time and row count metrics |
| Result export | Export query results to CSV or JSON files |
| Copy to clipboard | One-click copy results as tab-separated values for Excel/Sheets |
| Result comparison | Side-by-side diff of two results with cell-level highlighting |
| Feature | Description |
|---|---|
| Virtual scrolling | Smooth scrolling through thousands of rows |
| Inline editing | Edit cells in place with undo/redo support |
| Row operations | Add, delete, and batch-commit rows in transactions |
| Column filters | Equals, contains, greater-than, is null — with date picker for timestamps |
| Resizable columns | Drag column borders to fit your data |
| Cell expand | Click to preview, double-click for full row detail panel |
| Context menu | Copy cell, copy row, copy as INSERT statement |
| Feature | Description |
|---|---|
| Schema tree | Databases, schemas, tables, views, materialized views, functions, sequences, foreign tables |
| Fuzzy search | Instant search across your entire schema tree |
| Table structure | Columns, indexes, foreign keys, check constraints, unique constraints, triggers, partitions |
| Table profiling | Column statistics and data distribution with bar charts |
| DDL preview | View the full CREATE TABLE statement for any table |
| Table management | Rename, truncate, drop (with cascade), duplicate tables |
| ERD export | Save diagrams as PNG or SVG |
| Feature | Description |
|---|---|
| Connection manager | Save, edit, and test connections securely |
| Multi-engine | PostgreSQL and SQLite now; Redis, MongoDB, DuckDB, ClickHouse planned |
| Capability-aware UI | Tree, menus, toolbar, and tabs adapt to each engine's features |
| SSL/TLS support | Connect to databases with SSL encryption |
| Database management | Create, drop, and rename databases without leaving the app |
| CSV export | Stream large tables to CSV files |
| SQL export | Full DDL + data dump with progress tracking |
| SQL restore | Import .sql files with real-time progress and error handling |
| Command palette | Fuzzy-search any action with Ctrl+K |
Grab the latest release for your platform:
| Platform | File |
|---|---|
| macOS (Apple Silicon) | .dmg |
| macOS (Intel) | .dmg |
| Linux (Debian/Ubuntu) | .deb |
| Linux (AppImage) | .AppImage |
| Windows | .msi |
Requires Rust, Node.js, and pnpm.
On Linux (Debian/Ubuntu), you also need the Tauri system dependencies and the mold linker (the workspace is configured to link with mold):
sudo apt install libwebkit2gtk-4.1-dev build-essential curl wget file \
libxdo-dev libssl-dev libayatana-appindicator3-dev librsvg2-dev moldFor other distros, see the Tauri prerequisites guide.
git clone https://github.com/nevindra/sakidb.git
cd sakidb
pnpm install
pnpm tauri buildThe built application will be in src-tauri/target/release/bundle/.
Tauri v2 + Svelte 5 + Rust
Contributions are welcome! Whether it's bug reports, feature requests, or pull requests — all input helps make Saki better.
git clone https://github.com/nevindra/sakidb.git
cd sakidb
pnpm install
pnpm tauri devcrates/sakidb-core/ — Shared traits, types, errors (driver trait system)
crates/sakidb-postgres/ — PostgreSQL driver (feature-flagged)
crates/sakidb-store/ — Credential & query storage (encrypted)
src-tauri/ — Tauri app, DriverRegistry, IPC commands
src/ — Svelte 5 frontend (capability-gated UI)
cargo test # Rust tests
pnpm check # TypeScript/Svelte type checking- Run
cargo clippyand fix any warnings - Run
pnpm checkto ensure type safety - Keep commits focused and descriptive
Have an idea? Open an issue to start a discussion.
