Terminal app
quacktui
A terminal UI for DuckLake datalakes.
uv tool install quacktui brew install arksigma/tap/quacktui Features
Eight catalog views from the keyboard
Schema Browser, Table Details, Snapshot Timeline, File Inventory, Partition Explorer, Schema Evolution, Health Dashboard, and Catalog Info. Drill from a high-level overview down to per-file detail without leaving the terminal.
Multi-tab SQL editor with autocomplete
Syntax highlighting for SQL and Python, schema-aware autocomplete for table and column names, query history persisted in SQLite, saved snippets, and result export to CSV, Parquet, JSON, or the clipboard.
Maintenance ops with explicit confirmation
Compaction, expire snapshots, delete orphaned files, refresh statistics, and optimize manifests. Destructive operations require Ctrl+Enter to confirm — no accidental writes.
Read-only by default
quacktui refuses every mutation until you pass --allow-writes. Without the flag, write paths and maintenance ops are disabled — safe to point at production catalogs.
Pluggable catalog backends
DuckDB (embedded), PostgreSQL, SQLite, and MySQL — every backend supported by the DuckLake extension. Configure per-connection in connections.toml.
Any S3-compatible storage
AWS S3, MinIO, Cloudflare R2, DigitalOcean Spaces, or any custom S3 endpoint. Storage credentials live alongside the connection definition.
Install quacktui
uv (recommended)
uv tool install quacktui pip
pip install quacktui Homebrew
brew install arksigma/tap/quacktui ≥3.12. quacktui ships as a single CLI entrypoint (quacktui) and reads connections from ~/connections.toml.
Compatible backends
quacktui inherits DuckLake's backend support — pick whichever catalog and storage suit your deployment.
Catalog backends
- DuckDB Embedded, no separate server. The default.
- PostgreSQL Remote catalog for shared multi-user deployments.
- SQLite File-based catalog for portable single-user setups.
- MySQL Remote catalog where Postgres is not an option.
Storage backends
- AWS S3 Standard S3 buckets, any region.
- MinIO Local or self-hosted S3-compatible storage.
- Cloudflare R2 Zero-egress S3-compatible object store.
- DigitalOcean Spaces Managed S3-compatible storage.
- Any S3-compatible endpoint Custom endpoint, bucket, and credentials.
Keyboard shortcuts
Drive the TUI without leaving the keyboard.
| Key | Action |
|---|---|
| Ctrl+P | Command palette (search and run commands) |
| 1 / 2 / 3 | Switch between Catalog / Query / Maintenance |
| Ctrl+Enter | Execute SQL query or confirm destructive operation |
| Ctrl+N | Open new query tab |
| Ctrl+W | Close current tab |
| Ctrl+R | Recall query from history |
| Ctrl+T | Theme switcher (dark/light) |
| F1 | Help and keybindings |
| Tab | Navigate between panes |
About quacktui
quacktui is a Python TUI for browsing DuckLake catalogs, running SQL queries, and performing maintenance operations like compaction and snapshot expiry — all from the keyboard. Read-only by default; opt in to writes when you mean it.
Built on Textual for the UI, DuckDB for query execution, and the DuckLake extension for catalog and storage. Apache-2.0 licensed.