BrewMNMP

A native macOS application for managing Nginx, Apache, MySQL and PHP via Homebrew. Manage virtual hosts, SSL certificates, multiple PHP versions, MailHog/Mailpit, MySQL users and backups from a single clean SwiftUI interface.

Version: 1.1.13  ·  Requires: macOS 14+  ·  License: Proprietary

Requires Homebrew installed. Native Apple Silicon.

Features

Native macOS Interface

Built in Swift to integrate seamlessly with the operating system. No web frameworks, no Electron.

Homebrew Backend

Uses Homebrew to install and manage all services. No custom packages, no conflicts.

NGINX

Manage NGINX with one click. Virtual hosts, SSL, reverse proxy and advanced configurations always at hand.

MySQL

Start, stop and manage MySQL directly from the app. Database creation, user management and monitoring.

PHP Multi-version

Switch between different PHP versions in an instant. Integrated php.ini and extension management.

Zero Virtualization

No Docker, no VMs. Services run natively on macOS through Homebrew with maximum performance.

Simplified Configuration

Manage configurations, virtual hosts and stack parameters directly from the graphical interface.

Service Manager

Start, stop and switch between Nginx and Apache, MySQL and multiple PHP versions.

Virtual Hosts

Per-vhost PHP version, custom domains via dnsmasq + .test TLD, Nginx and Apache support.

SSL with mkcert

One-click trusted local SSL certificates per virtual host.

MySQL Toolkit

Manage users, run queries, import/export databases and schedule backups.

System Requirements

  • macOS 14 Sonoma or later
  • Homebrew installed (brew.sh)
  • Apple Silicon (M1/M2/M3/M4) - native
  • 500 MB free disk space (excluding Homebrew formulae)
  • macOS 14 Sonoma or later (Apple Silicon recommended)
  • Homebrew installed (https://brew.sh)

Versions

Version 1.1.13 DMG

• phpMyAdmin vhost HTTPS-only retrofit: existing installations created by older versions get their phpmyadmin.test vhost flipped to httpEnabled=false at first launch (one-shot, flag-gated). Port 80 and the 301 redirect block are removed; only the HTTPS server stays. • Homebrew prerequisite checks added across the install entry points: mkcert (SSLService.install), MailHog (MailHogService.install) and every Additional Tool (AdditionalToolsService.install) now refuse with a clear "Homebrew is required" error instead of failing with a generic command-not-found message when brew is missing.

[verify_sha256] · 3.65 MB
a8c787d2f57c753a7df14ef51e4eb41a5e22f8b80071b9bb1a1726a497ae409d
Run: shasum -a 256 BrewMNMP-1.1.13.dmg
Version 1.1.12 DMG

• phpMyAdmin is now installed HTTPS-only for security: the dedicated phpmyadmin.test vhost no longer binds plain HTTP (port 80). Access is only via https://phpmyadmin.test/. • mkcert + local CA are now hard prerequisites of the phpMyAdmin install button. The Tools panel shows a checklist of the two requirements with green/orange status; the Install button is disabled until both are satisfied. Once they are, one click downloads phpMyAdmin and provisions the SSL vhost end-to-end. • Clear in-app messaging explains the security rationale ("Port 80 is intentionally not used for phpMyAdmin").

[verify_sha256] · 3.64 MB
8dfaf724279408ecbcaf2e73d78044be13dfd505a4113c32a8d0bcb8587f7010
Run: shasum -a 256 BrewMNMP-1.1.12.dmg
Version 1.1.11 DMG

• Fix: Configuration validator no longer reports a phantom "Nginx HTTP Port not found" warning when the listen directive lives inside a user-supplied vhost (sites-enabled/*.conf) instead of the main nginx.conf. The validator now scans both the main config and every enabled vhost before deciding the port is missing. • Same fix applies to the HTTPS port check.

[verify_sha256] · 3.63 MB
f26db0210717bb8c3ff6510d29fec52d9f49023e07540a3dd86f9f68c835bc42
Run: shasum -a 256 BrewMNMP-1.1.11.dmg
Version 1.1.10 DMG

• Fixed: MySQL "wrong root password" message when the MySQL service is actually stopped — now shows "MySQL is not running" with a hint to start it from the Services tab. • Fixed: false-positive "Nginx HTTP Port not found" critical alert when the daemon is not running — severity downgraded to warning while Nginx is stopped. • Fixed: Nginx port-discrepancy validator now recognises listen 80, listen *:80, listen 0.0.0.0:80 and listen [::]:80 (previously missed everything but bare "listen 80"). • Fixed: "Fix All" and the per-row Fix button now actually rewrite nginx.conf with current httpPort / httpsPort values (the marker-gated setupConfiguration() was a no-op after the first migration). • Better failure-mode separation in MySQL connection probe: server unreachable vs. real Access denied are no longer confused.

[verify_sha256] · 3.63 MB
f3f5a09faad0c35fe280f7fb448b7f7eec46cb6b25c77e0532ed3c1c96dfc1e8
Run: shasum -a 256 BrewMNMP-1.1.10.dmg
Version 1.1.9 DMG

• Built-in app self-update via the BrewApps feed (silent at launch + manual check from Settings or app menu) • Explicit alerts: "Update available" / "You are up to date" • SHA-256 verification box on the download page and inside the in-app banner • Various stability fixes for vhosts, dnsmasq status reporting and PHP information panel.

[verify_sha256] · 3.63 MB
9bdf1c6b1529a94b676fe0c334ae59da2aed54475c60f198c2e1d7817d1158a1
Run: shasum -a 256 BrewMNMP-1.1.9.dmg

BrewMNMP

Download DMG