Skip to content
NashSaint
Corral icon

macOS desktop app

Corral

Round up your whole dev stack. One menu bar, zero wrangling.

Corral screenshot 1

Overview

What Corral is and why it exists.

Corral is a macOS menu bar app that runs a complete local PHP development environment: multiple PHP and Node versions, nginx, HTTPS on .test domains, MySQL, a mail catcher and a built-in database browser. It replaces Laravel Herd, DBngin and TablePlus for everyday work, in one signed, self-updating app for Apple silicon and Intel Macs.

Highlights

Why people love Corral.

Automatically switches a site to a PHP build with SQLite and Postgres drivers when its .env needs them

Takes over an existing Laravel Herd setup in one step, sites and HTTPS included

Imports DBngin's MySQL data in about a second

Database browser speaks the MySQL protocol directly, with no client tools needed

Recovers services after sleep, crashes and reboots

Universal app for Apple silicon and Intel Macs

Full uninstall that removes everything it set up on the Mac

The story

From problem to product.

The problem

A local PHP setup on a Mac usually means juggling several tools: one for PHP and web serving, another for databases, another for browsing data, plus Homebrew packages that break on upgrades. Each has its own settings and its own idea of which PHP or Node version a project uses, and the paid tiers lock away features like per-site versions and mail catching.

The approach

One menu bar app that owns the whole stack. Park a folder and every project inside gets its own HTTPS .test address. Each site picks its PHP and Node version, and the terminal's php, composer and node follow whichever project you're in. MySQL servers, a database browser, a mail catcher and logs live in the same window, with settings applied live. First launch sets up domains and certificates with a single password prompt, and the app updates itself.

Under the hood

How it came together.

Scope

What the product covers, end to end.

  • Site management: parked folders, linked sites and proxies to dev servers such as Vite
  • PHP 8.0 to 8.5 side by side, with per-site versions
  • Node.js versions with an nvm-compatible command and .nvmrc support
  • Local certificate authority and automatic HTTPS for every site
  • Built-in DNS server for .test domains
  • MySQL servers with backups, imports, cloning and one-click .env setup
  • Paddock, a database browser for MySQL and MariaDB
  • Mail catcher with a web inbox and a Mailpit-style API
  • corral command-line tool
  • Signed, notarized releases with Sparkle auto-updates and a Laravel release website

Technology

How it is built and kept running.

  • Flutter and Dart for the app and its services
  • Swift for the menu bar, Keychain and certificate trust
  • nginx built from source as a universal binary
  • Static PHP builds from static-php-cli
  • A MySQL and MariaDB wire-protocol client written in Dart
  • DNS and SMTP servers written in Dart
  • Sparkle 2 with EdDSA-signed updates
  • Laravel 13 for the release website and update API

Role & delivery

What NashSaint designed, built and shipped.

  • Product design
  • macOS app development
  • Backend and systems programming
  • Release engineering: code signing, notarization and auto-updates
  • Web development for the landing page and admin

Outcomes

The difference it makes.

  1. 01 Replaced Herd, DBngin and TablePlus in my own daily work
  2. 02 Served 16 of 17 existing Herd projects unchanged on the first run
  3. 03 Ships as one notarized download that updates itself through the website

Need a hand?

Questions about Corral?

Send a support request and you will hear back by email. Privacy and terms are always one click away.