One Mac app. Free and Pro.

A good place
to build.

Sites, runtimes, databases, mail, and debugging, in one native Mac app. Link a folder and get to work.

Free to startPro from US$49 a yearmacOS 14 or laterApple Silicon and Intel

PXM Sites screenshot

Actual app capture with synthetic demo data. Local services use isolated test ports.


PHP versions, 8.2 to 8.5
4
service engines in Pro
12
MCP tools in Pro
44
terminal shims, included free
8

01The workspace

Less setting up.
More making things.

Link a folder and PXM works out what it is. Give each project its own PHP or Node version, a .test address, and HTTPS, then get back to the code.

Sites that feel at home. Free

Drop projects into a watched folder. Open them at a clean .test address, turn on local HTTPS, and choose the PHP or Node version each one needs.

Your stack, without the setup. Free

Download prebuilt PHP and extensions in the app. Switch versions, manage Node and Composer, and set sensible defaults.

Databases, on your terms. Pro

Add MySQL, PostgreSQL, Redis, and more. Keep an existing server, or import a copy into a service PXM manages.

A proper home for development mail. Pro

See what your app is sending without leaving your workspace. Open any message, read the HTML preview, and move on.

Link a folder. PXM knows what it is.
Link or park a folder and PXM recognizes the framework, with 18 layouts detected plus CodeIgniter and Laminas. Set a custom document root, add up to 50 aliases per site, and keep favorites and groups for the projects you open most.
A clean address, with a lock on it.
Approve PXM's routing helper once and every site answers at a clean .test address, served by Caddy and PHP-FPM. Turn on local HTTPS with a certificate from mkcert, or import your own. Add response headers and directory listing when a project needs them.
Four PHP versions, prebuilt and signed.
Install PHP 8.2, 8.3, 8.4, and 8.5 for Apple Silicon and Intel without Homebrew or developer tools. Each site runs in its own PHP-FPM pool with 2 to 32 workers, and several versions serve at the same time.
Node that follows the project.
Install official, checksum-verified Node releases side by side. PXM reads .nvmrc and .node-version files and understands LTS aliases, so each site runs on the version it expects.
A new Laravel app, with the choices made.
Create a Laravel project from the app on PHP 8.2 or later. Pick React, Vue, Livewire, or Svelte, Pest or PHPUnit, Laravel or WorkOS authentication, teams, Boost, and a Git repository.
Settings that travel with the code.
Keep per-project configuration in pxm.json and pxm-driver.json, committed beside your code. Export a site as a portable file and import its settings on another Mac. Proxy a local dev server to a .test name, with WebSockets passed through.

02Services and databases

Twelve engines,
managed from one window.

Install MySQL, PostgreSQL, Redis, and nine more from the app. Run several instances side by side, clone one for an experiment, and copy its .env lines straight into your project. Included with PXM Pro.

MySQL
8.4, 8.0
MariaDB
11.8, 11.4, 10.11
PostgreSQL
18, 17, 16, 15, 14 · PostGIS, pgRouting, pgvector
MongoDB
8.0, 7.0
Redis
8.2, 6.2
Valkey
Default
Memcached
Default
Meilisearch
Default
Typesense
30.2, 29.0
Mailpit
Default
MinIO
Default
RustFS
Apple silicon only
Keep the database you already have.
PXM finds local MySQL, MariaDB, and PostgreSQL servers from Herd, Homebrew, Postgres.app, MAMP, and Docker's published ports. Save a connection and keep the current server, or import a copy into a service PXM manages. The original stays where it is.
Move up a major version without starting over.
Logical version migration copies a stopped MySQL, MariaDB, or PostgreSQL service into a new instance on a newer release. Verify the copy before you switch your project.
PostgreSQL extensions, ready to prepare.
Prepare PostGIS, pgRouting, and pgvector from a PostgreSQL service's Database Extensions panel, then enable them for the database you choose.
WordPress, with a MySQL of its own.
Create a WordPress site and PXM provisions an isolated MySQL 8.4 instance for it, so one project's database never shares space with another's.

Provisioning creates the instance. It does not run migrations, import data, or create buckets or indexes. Most optional service installers still use Homebrew; MongoDB, Typesense, and RustFS download directly.


03Inspect

See what your app
is really doing.

Mail, dumps, queries, logs, and profiles sit next to the sites that produce them. Open the one you need, get your answer, and get back to the code.

Every outgoing email, caught locally. Pro
A local inbox for all your sites, with an HTML preview plus Text, Headers, and Raw views, and the connection details your project needs. Messages are caught, not delivered.
Dumps, queries, jobs, and HTTP events. Pro
Add the opt-in PHP bridge to a project by hand and PXM collects dumps, queries, jobs, views, and HTTP events, keeping the latest 500 events or 16 MB. Request headers and bodies are left out.
Logs that open at the line.
Read the last 500 KB of a site's log, refreshed every two seconds. When an entry references a PHP file, open it at the exact line in Xcode, VS Code, or Cursor.
Step debugging and flame graphs. Pro
Turn on Xdebug per site with trigger-based debugging. Profile a request to Cachegrind output, then read it as a table, a call graph, or a flame graph in the app. From the terminal, pxm debug and pxm coverage run the CLI under Xdebug.
Profile with SPX, in Free. Free
SPX 0.4.22 ships prebuilt, with a local authenticated dashboard. Enable it per site. A site uses SPX or Xdebug, one at a time.
Tinker, right next to the site. Pro
Open a Laravel Tinker session for any Laravel site from the PXM app, or hand it to Tinkerwell when you choose it as your Tinker app.

04Project tasks

Queue, scheduler, Vite.
One place to start them.

Run a queue worker, the scheduler, Reverb, a Vite dev server, composer install, or npm install from the site's panel. Tasks use the site's pinned runtimes and stop when you quit PXM.

Frontend and Reverb tasks take a port of your choosing. The Reverb project task is Free. The standalone Reverb manager, with Reverb 1.12.0, is part of Pro.

The Project Tasks panel of the Atlas site in PXM, with Queue Worker selected and a Run button.

Task kinds

  • Queue worker
  • Scheduler
  • Reverb
  • Frontend (Vite)
  • Composer install
  • npm install


06Moving in

Bring the projects
you already have.

PXM reads Herd and Valet parked folders and links without touching them, detects each project's PHP pin, and imports only the sites you select. With Pro, it can also find and adopt existing databases. You move at your own pace, one project at a time.

Read the migration guide

Finds what you already run

  • Herd
  • Valet
  • Homebrew
  • Postgres.app
  • MAMP
  • Docker

Local routing changes hands when the other tool releases its ports. PXM does not switch it for you.


07The native parts

A Mac app,
through and through.

Signed updates, on your schedule.
Updates arrive through an Ed25519-signed Sparkle feed. PXM tells you when one is ready, and you choose when to install it.
Menu bar and shortcuts.
Reach PXM from the menu bar, and set the global shortcuts you want. Closing the window keeps PXM running.
Your editor and terminal, one click away.
Open any site in Xcode, Visual Studio Code, Cursor, Zed, or PhpStorm, or in Terminal, iTerm2, Ghostty, or Warp, straight from the site.
Light, dark, or system.
One universal app for Apple Silicon and Intel on macOS 14 or later. It follows your appearance setting, or the one you choose for it.

Pricing

Start free.
Add Pro when you need it.

Free covers sites, runtimes, tasks, SPX, and sharing. Pro adds services, inspectors, Tinker, and the MCP server.

PXM

Free

US$0

Everything you need to run local sites.

  • Sites, .test addresses, and local HTTPS
  • PHP 8.2 to 8.5, Node, and Composer, pinned per project
  • Laravel and static site creation
  • Project tasks and the pxm command line
  • SPX profiling
  • Cloudflare sharing
Get PXM Free

No account. No license key. No credit card.

PXM Pro · Billed yearly

Annual

US$49/ year

The whole stack, on two Macs.

  • Everything in Free
  • 12 service engines and database adoption
  • WordPress setup with managed MySQL
  • Mail, Dumps, and Insights
  • Xdebug, Tinker, pxm debug and coverage
  • MCP server for your coding agent
  • Two personal computers
Choose Annual

US$49 billed yearly. Cancel renewal anytime; Pro stays active through your paid period.

PXM Pro

Lifetime

US$129.99once

All of Pro. One payment.

  • Every feature in Annual
  • Two personal computers
  • A lifetime PXM Pro license
  • No subscription or renewal
Choose Lifetime

US$129.99 paid once. Periodic online license checks apply to Pro.

One Mac app, with Free and Pro built in. Paid plans open Stripe checkout directly. Prices in US dollars. Purchase terms · 14-day refund policy.

If a Pro license expires, your sites and Free tools keep running. Managed services stop gracefully, and database files and project settings stay on disk.

Questions

Before you settle in.

What is in PXM Free, exactly?

Sites with .test addresses and local HTTPS, PHP 8.2 to 8.5, Node, Composer, Laravel creation, project tasks, SPX profiling, Cloudflare sharing, and the workspace commands in pxm. No account, license key, or credit card. Pro adds managed services and databases, WordPress creation, Mail, Dumps and Insights, Xdebug, Tinker, pxm debug and coverage, the capture commands, and the MCP server.

Do I need Homebrew or Xcode?

Not for PHP, its extensions, or Node. PXM downloads signed prebuilt packages for those. Some optional service installers still use Homebrew, and individual project tools may have requirements of their own.

Which PHP versions does PXM ship?

8.2, 8.3, 8.4, and 8.5, as CLI and FPM builds for Apple Silicon and Intel. PXM does not ship PHP 7.4, 8.0, 8.1, or beta builds.

Can different sites use different PHP versions?

Yes. Choose a workspace default, then pin any site to another installed version. Each site runs in its own PHP-FPM pool, so several PHP versions serve at the same time.

Can I keep my existing databases?

Yes. Save a connection to keep using the current server, or import selected databases into a new service PXM manages. The original data stays with its server. Both options need Pro. Read the database guide.

Can I bring my Herd or Valet sites?

Yes. PXM reads Herd and Valet parked folders and links without changing them, detects each project's PHP pin, and imports the sites you choose. Sites are served by Caddy and PHP-FPM. Local routing moves to PXM once the other tool releases its ports; there is no automatic cutover.

Does the MCP server need Pro?

Yes. The MCP server, the capture commands, and pxm debug and coverage are part of PXM Pro. The rest of the command line is Free. Read about PXM for AI agents.

How does sharing work?

A Quick Link gives a running site a temporary public address through a Cloudflare tunnel. To share on your own domain, connect the Cloudflare account that manages it and choose a subdomain. A tunnel configured in the Cloudflare dashboard can also be started with its token, after you accept its configured routes. Sharing never starts on its own, and stopping a share leaves your remote tunnel and DNS records in place for you to manage.

What happens when an annual license expires?

Your sites and every Free tool keep running. Managed Pro services stop gracefully, and your database files and project settings remain on disk. The recovery commands for listing, stopping, and removing services keep working. Renew to manage services again.

How do updates work?

PXM checks an Ed25519-signed Sparkle feed and tells you when a new version is ready. You choose when to install it. Checking the PHP and Node catalogs never installs or switches a runtime.

Is PXM available for Windows?

PXM is built for macOS first and needs macOS 14 or later. Windows is planned, with no release date announced.

Ready when you are.

Open PXM, link a project, and get back to the work you came to do.