Skip to content

s1dd54rt5/daytabayse

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 
 
 

Repository files navigation

DaytaBayse

DaytaBayse Logo

Native macOS PostgreSQL client built with SwiftUI.

Overview

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.

Features

Connectivity and Security

  • 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

Querying and Exploration

  • Multi-tab SQL editor with independent state per tab
  • Execute full SQL or selection-first execution behavior
  • Schema-aware execution (search_path support)
  • 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

Data Workflows

  • 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

App Experience

  • Native macOS UI built with SwiftUI
  • Preferences for editor, display, history, and connection behavior
  • Idle auto-disconnect support

Security Notes

  • 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.

Requirements

  • macOS 14.6+
  • Xcode with Swift 5 support
  • Swift 5

Build and Run

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=NO

Keyboard Shortcuts

  • Cmd+Shift+N: New Connection
  • Cmd+T: New Query Tab
  • Cmd+S: Save Query
  • Cmd+Shift+O: Connect
  • Cmd+Shift+W: Disconnect
  • Cmd+R: Refresh Schema
  • Cmd+Enter: Execute Query
  • Cmd+Shift+Enter: Execute Selected SQL
  • Cmd+Shift+F: Format SQL
  • Cmd+K: Clear Results

Dependencies

Swift Package Manager dependencies in this project:

Project Structure

DaytaBayse/
  AGENTS.md
  Assets.xcassets/
  Sources/
    App/
    Models/
    Services/
    ViewModels/
    Views/
    Resources/
DaytaBayse.xcodeproj
logo.png

Architecture (High Level)

  • MVVM-style UI coordination
  • ConnectionManager is 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

Status

Actively developed macOS PostgreSQL client.
If you find issues or want specific workflow improvements, open an issue or propose a PR.

About

Native Swift Client for PostgreSQL

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages