The Sawit app icon: a palm tree whose trunk is three database discs

SawitLocal Postgres. No Docker.

Your database, an editor and a terminal in one native Mac app.

One 34 MB binaryApple Silicon · macOS
curl -fsSL https://raw.githubusercontent.com/bahrulbangsawan/sawit.dev/main/scripts/install.sh | sh

Postgres, running

PostgreSQL 16, 17 or 18 from Homebrew, Postgres.app, your PATH, or a download Sawit fetches itself. Each instance listens on localhost only.

shopPostgreSQL 16 · :55432
Instance shop

LOG: database system is ready to accept connections

One window, every tool

  • Runs the selection, or the whole editor. Results stream in, with DETAIL and HINT on errors.

    SQL editor with an aggregation query and its result table

A database, no Docker

shopNew
PostgreSQL 16 · :55432
  • Listens on localhost only
  • postgres superuser, trust auth

First you name it.

:55432 is freeChecked
No other process, Homebrew service or Docker container
  • Shadowed binds caught too
  • Start is held on a conflict

Then Sawit checks the port.

shopRunning
pg_ctl start
  • Live log in the window
  • Stop and restart one click away

Then it starts, with its log.

DATABASE_URL.env
postgres://postgres@localhost:55432/postgres
  • Written to the project’s .env
  • TanStack Start, Next.js, Rails connect

Last, your app connects.

One binary, 34 MB

Drawn by the GPU

Rust and GPUI, in Zed’s One Dark colours. About 67 MB of memory when idle, with no JVM, Chromium or Node runtime inside.

Agents welcome

sawit-mcp gives AI agents 110 tools: instances, SQL, ports, git, the terminal and the browser. Destructive tools ask for the name again.

Read how agents use it

Good to know

Do I need Docker?

No. Sawit uses PostgreSQL from Homebrew, Postgres.app or your PATH, or downloads PostgreSQL 16, 17 or 18 itself.

Which Macs does it run on?

Apple Silicon, macOS only. Sawit leans on the Keychain, lsof, AVPlayer and CoreGraphics.

Why does macOS say it cannot verify Sawit?

Sawit is not notarized yet. The install script avoids the warning. With the DMG, right-click Sawit.app and choose Open once.

Where do my passwords go?

Into the macOS Keychain, never a file. The table browser reads over a separate read-only connection.

How does it update?

After the first install the app updates itself. Put SAWIT_VERSION=v0.0.8 before sh to install a given version.

Can I edit a single cell in the grid?

Not yet. The grid deletes rows or sets one column on the rows you select; single cells go through the SQL editor.

Install Sawit with one command on an Apple Silicon Mac.