A fast, native desktop client for PostgreSQL — browse your schema, run queries, edit data, and export results, without a browser tab in sight.
Work in progress. Waterfowl is usable but still early. Don't point it at a production database you care about yet.
- Connections — save and manage multiple PostgreSQL connections, test them before connecting.
- Schema browser — tables, views, functions, sequences and enums for every schema in the database.
- Data grid — page through table and view data, filter by column, hide columns you don't need, and edit cells in place.
- Query editor — run single queries or whole scripts, with per-statement results.
- Export — write tables, views or a filtered selection out as CSV, JSON (array or NDJSON) or SQL
INSERTstatements. Exports stream to disk, so table size isn't limited by available memory. - Auto-updates — new releases are picked up in the background.
Grab the latest build for your platform from the releases page:
| Platform | File |
|---|---|
| macOS (Apple Silicon) | .dmg |
| Windows | .msi or .exe |
| Linux | .AppImage, .deb or .rpm |
macOS and Windows will warn that the app is from an unidentified developer — the builds aren't code-signed yet.
You'll need Node.js 24, pnpm and a Rust toolchain. On Debian/Ubuntu you'll also need the system libraries Tauri builds against:
sudo apt-get install libwebkit2gtk-4.1-dev libappindicator3-dev librsvg2-dev patchelfThen:
pnpm install
pnpm tauri dev # run in development mode
pnpm tauri build # produce a release binary for your platformMost of the interesting code talks to a live PostgreSQL server, so there's a seeded test database to develop against:
podman compose -f dev/compose.yaml up -d # or `docker compose`
pnpm seedThat gives you postgresql://postgres:postgres@localhost:5432/waterfowl_test,
populated with tables covering a wide range of PostgreSQL types.
Running the tests:
pnpm test # frontend
cd src-tauri && cargo test # backendThe backend tests that need a database skip themselves when it isn't running, and still report success — so bring the database up first, or you'll be looking at a green suite that tested nothing.
Tear it down with podman compose -f dev/compose.yaml down -v.
Issues and pull requests are welcome. If you're picking up something larger,
open an issue first so we can talk it through — TODO.md tracks what's
planned and what's known to be broken.


