Native macOS PostgreSQL client built with SwiftUI.
DaytaBayse is a desktop PostgreSQL client focused on a clean native UI, predictable behavior, and secure credential handling.
It supports direct and SSH-tunneled connections, schema/table exploration, SQL query workflows, and export tooling for day-to-day database work.
- Saved PostgreSQL connection profiles
- Direct database connections or SSH tunnel connections
- SSH auth via password or private key
- PostgreSQL auth mode selection (Cleartext / MD5 / SCRAM-SHA-256)
- SSL mode controls with optional CA certificate selection
- Credentials stored in macOS Keychain
- Multi-tab SQL editor with independent state per tab
- Execute full SQL or selection-first execution behavior
- Schema-aware execution (
search_pathsupport) - Query history with search and clear actions
- Sidebar browser for schemas, tables, views, and materialized views
- Table detail tabs for Data, Structure, DDL, Indexes, and Constraints
- Paginated data grid with sorting and resizable columns
- Server-side filter builder (including typed date and boolean handling)
- Row/cell copy actions from result grids
- Export results to CSV, JSON, SQL INSERT, and TSV
- Native macOS UI built with SwiftUI
- Preferences for editor, display, history, and connection behavior
- Idle auto-disconnect support
- Connection metadata is persisted in
~/Library/Application Support/DaytaBayse/connections.json - Query history is persisted in
~/Library/Application Support/DaytaBayse/query_history.json - Database and SSH passwords are stored in Keychain, not in JSON files.
- macOS 14.6+
- Xcode with Swift 5 support
- Swift 5
Open the project in Xcode:
DaytaBayse.xcodeproj
Run the app target:
- Scheme:
DaytaBayse
Or build from terminal (from repo root):
xcodebuild -project DaytaBayse.xcodeproj \
-scheme DaytaBayse \
-configuration Debug \
-sdk macosx \
-derivedDataPath /tmp/daytabayse-deriveddata \
build CODE_SIGNING_ALLOWED=NOCmd+Shift+N: New ConnectionCmd+T: New Query TabCmd+S: Save QueryCmd+Shift+O: ConnectCmd+Shift+W: DisconnectCmd+R: Refresh SchemaCmd+Enter: Execute QueryCmd+Shift+Enter: Execute Selected SQLCmd+Shift+F: Format SQLCmd+K: Clear Results
Swift Package Manager dependencies in this project:
DaytaBayse/
AGENTS.md
Assets.xcassets/
Sources/
App/
Models/
Services/
ViewModels/
Views/
Resources/
DaytaBayse.xcodeproj
logo.png
- MVVM-style UI coordination
ConnectionManageris the primary UI state owner (@MainActor)- Service layer handles database, SSH tunnel, storage, keychain, history, and export
- Deterministic connection lifecycle and cleanup on disconnect/failure
Actively developed macOS PostgreSQL client.
If you find issues or want specific workflow improvements, open an issue or propose a PR.
