Jump to main content Jump to doc navigation

When you develop bug fixes or features for MODX Revolution core, use a local clone of your fork. For building Extras against a normal site install, see Setting up a Development Environment instead.

You need a working local web server. This page does not cover MAMP, XAMPP, Docker, or native stacks. Match Server Requirements for the branch you target (3.x needs PHP 8.1+ and Composer).

Many contributors keep separate checkouts for active branches (for example 3.x and an older maintenance line) so they do not rebuild constantly when switching work.

Step 1: prepare a fork

Click Fork on the official repository and create the fork under your GitHub account if you do not have one yet.

You commit to your fork, then open a pull request against the official repository.

Step 2: install MODX from your fork

Follow the git installation instructions. Clone your fork URL (not modxcms/revolution as origin), run Composer, build the core package, and complete Setup.

Step 3: add the upstream remote

So you can pull official commits into your fork:

git remote add upstream https://github.com/modxcms/revolution.git

Then git fetch upstream and update your branch with merge or rebase as your workflow prefers.

Step 4: configure MODX for core work

  1. Turn off cache_lexicon_topics so lexicon edits show up while you work.
  2. Use a unique session_name if you run several local MODX installs on one host.
  3. After changing core PHP or lexicon files, clear core/cache/ (or Manage → Clear Cache) before retesting.

Other tools

Many MODX developers use PhpStorm as their IDE. GitHub CLI helps when you open many pull requests.

For building assets and running tests, see tooling.

Support the team building MODX with a monthly donation.

The budget raised through OpenCollective is transparent, including payouts, and any contributor can apply to be paid for their work on MODX.

Backers

  • modmore
  • STERC
  • Digital Penguin
  • Jens Wittmann – Gestaltung & Entwicklung
  • CrewMark
  • Fabian Christen
  • Sepia River Studios
  • Dannevang Digital
  • Alex
  • A. Moreno
  • Chris Fickling
  • Stéphane Jäggi
  • Murray Wood
  • Anton Tarasov
  • deJaya
  • JT Skaggs
  • Lefthandmedia
  • eydolan
  • Following Sea
  • Guido Gallenkamp
  • YJ
  • Raffy
  • Snow Creative
  • Nick Clark
  • Guest
  • Helen
  • krisznet
  • Yanni
  • Richard

Budget

$204 per month—let's make that $500!

Learn more