● Open source · Local development

Your next Magento project starts here.

MageBox brings native PHP and Nginx together with Docker-based supporting services for local Magento development. Manage project environments and PHP versions with a tool built around the way Magento developers work.

Free, open source, and what we use for our own Magento projects.

~/projects · magebox
# a new Mage-OS store with sensible defaults + sample data
$ magebox new mystore --quick
  Mage-OS · PHP 8.3 · MySQL 8.0 · Redis · OpenSearch
  domain: mystore.test

# …or with the Hyvä theme on top
$ magebox new mystore --quick --hyva

# an existing project: one config file, then start
$ magebox init
$ magebox start
$ magebox open

● How it works

Native where it's fast. Docker where it's handy.

PHP-FPM and Nginx run natively on your machine, for maximum performance. The services Magento leans on — MySQL, Redis, OpenSearch, Varnish — run in Docker, so every project gets the versions it asks for.

01 · Native

On your machine

  • PHP-FPM — switch versions per project
  • Nginx — vhosts for every project domain
  • mkcert — local HTTPS out of the box
  • *.test — DNS resolution set up for you

02 · Docker

In containers

  • MySQL — the database version your project needs
  • Redis / Valkey — cache and sessions
  • OpenSearch — catalog search
  • Varnish · Mailpit — full-page cache, email testing
.magebox.yaml
name: mystore
domains:
  - host: mystore.test
    root: pub
    ssl: true
php: "8.3"
services:
  mysql: "8.0"
  opensearch:
    version: "2.19.4"
    memory: "2g"
  mailpit: true
commands:
  reindex:
    description: "Reindex all indexes"
    run: "php bin/magento indexer:reindex"

● One file per project

Commit the environment with the code.

magebox init writes a .magebox.yaml next to your code: domains, PHP version, services and your own project commands. Everyone on the team runs magebox start and gets the same stack.

  • magebox run reindex — project commands live in the same file.
  • magebox php 8.4 — switches the project's PHP version and stores it in .magebox.local.
  • magebox start --all — bring up every MageBox project at once.

● Everyday commands

The boring parts, handled.

A few of the commands that come with it — run magebox --help for the full list.

  • magebox new

    New Magento or Mage-OS store

    A setup wizard for distribution, version, PHP, services, sample data and database — or --quick for defaults, --hyva for Hyvä.

  • magebox php · xdebug

    PHP versions and debugging

    Switch the PHP version for one project, manage INI settings, and turn Xdebug on or off when you need it.

  • magebox watch

    Only the caches that changed

    Runs mage-os/magento-cache-clean to clear just the affected cache types — and the Tailwind watcher of a Hyvä theme alongside it.

  • magebox test

    Tests and static analysis

    PHPUnit unit and integration tests, PHPStan and PHP_CodeSniffer — set up and run from one command.

  • magebox expose

    Share a local store

    A temporary public URL through a Cloudflare quick tunnel. Base URLs are switched to the tunnel and reverted when it stops.

  • magebox team · fetch · sync

    Built for teams

    Shared team configurations for GitHub, GitLab or Bitbucket, and database and media pulled from your team's asset storage.

  • magebox db · mailpit · phpmyadmin

    Data and email at hand

    Database operations, a database UI and an inbox that catches every email your store sends.

  • magebox stop-protocol

    Try STOP locally

    Enables OPcache with app/preload.php as the preload script — the STOP protocol from our Speed Suite.

  • magebox blackfire · tideways · varnish

    Profile like production

    Blackfire and Tideways profilers and Varnish cache management when you need to see what production sees.

● Where it runs

macOS and Linux, set up in one go.

magebox bootstrap prepares a machine for first use: it checks Docker, Nginx and mkcert, installs PHP 8.1 – 8.4 through your package manager, sets up HTTPS and DNS, starts the shared services and installs CLI wrappers that switch PHP and Composer versions per project automatically.

  • macOS

    12 – 15 · Monterey to Sequoia

  • Ubuntu

    20.04 · 22.04 · 24.04

  • Fedora

    38 – 43

  • Arch Linux

    Rolling release

● Free · Open source

Start your next Magento project locally.

Find out more on magebox.dev, or read the code — and send a pull request — on GitHub.