
I built a native PostgreSQL admin tool with Tauri 2 — ~6MB, no Electron, credentials in macOS Keychain
Hey r/tauri! I wanted to share **VeloxDB**, a PostgreSQL desktop client I've been building with Tauri 2 and Rust. The whole idea was to build something that actually felt native — no bloat, no cloud middlemen, no Electron tax.
Here's the stack:
- UI → React 19 · TypeScript · Tailwind · shadcn/ui
- Editor → Monaco (VS Code engine) · schema-aware SQL autocomplete
- Diagrams → ReactFlow · Dagre (visual ER diagram builder)
- Desktop → **Tauri 2**
- Backend → Rust · tokio-postgres · deadpool · rustls
- Build → Vite 8 · pnpm
**Things Tauri made really natural to build:**
🔐 Keychain integration— credentials live in macOS Keychain. No plaintext config files ever.
⚡ Local-first IPC — the frontend talks directly to the Rust backend via Tauri's IPC bridge. Zero cloud, zero telemetry.
📦 Tiny footprint — the whole binary is ~6MB. pgAdmin's installer is 500×+ that.
🗂 Visual ER designer— drag-and-drop schema builder powered by ReactFlow. No DDL by hand.
📊 Virtual scrolling — million-row tables stay snappy. Only renders what you see.
🌐 SSH tunneling + SSL — stable pooled connections via deadpool-postgres, rustls for TLS.
The Tauri IPC bridge made it surprisingly easy to wire up a repository pattern — the frontend data layer is abstracted behind a `VeloxDbRepository` interface, so swapping the transport later would be trivial.
Would love any feedback from the Tauri community — especially around window state management, updater best practices, or anyone who's tackled SSH tunneling from the Rust side. Happy to discuss any implementation details!