A simple, standalone app to run Drupal CMS locally with zero setup.
This installs Drupal CMS on your machine and opens it in your default browser. The idea is a basic Drupal environment that just works: no fiddly setup process, no Docker, no external dependencies. Simply double-click the app to get started.
This product includes PHP software, freely available from http://www.php.net/software/.
- How to try it
- What this app is for
- How it works
- Where are the Drupal files and database?
- How to uninstall
- Troubleshooting
- Sponsorship
- Contributing
- Limitations and alternatives
- Windows: Download the latest release and double-click to install and run.
- macOS: Download the latest release, unzip it, and move the app to your Applications folder. Then double-click it to run.
- Linux: Install AppImageLauncher, then download the latest release of the Drupal CMS Launcher appropriate for your system and double-click it.
This app is actively developed, so if you encounter buggy behavior, please report it!
This launcher is designed to help you test out and build a site with Drupal CMS. It's ideal for site builders, themers, and evaluators who want to explore Drupal CMS quickly.
It is not intended for contributing to or developing Drupal CMS itself. If your goal is to contribute code to Drupal CMS upstream, visit the Drupal CMS project on Drupal.org.
We use static-php-cli to compile a copy of PHP 8.3 that includes everything needed to run Drupal CMS. We bundle that with the Composer dependency manager, and use those two tools to install and serve Drupal CMS. The app itself is a very simple wrapper around PHP and Composer, written in TypeScript using the Electron framework.
The Drupal files and database are stored outside of the application, in the drupal directory under the system's application data directory. The site uses a lightweight SQLite database, located at web/sites/default/files/.ht.sqlite
.
To reset your Drupal CMS instance, press the trash icon to delete the drupal directory from your system's application data directory. You will then be able to reinstall Drupal CMS from scratch.
To completely uninstall the Drupal CMS Launcher and remove all associated files:
-
Remove the Drupal files:
- Run the app and press the trash icon to delete the Drupal directory.
- Quit the app.
-
Delete the application:
- On macOS: Move the app from your Applications directory to the Trash.
- On Windows: Uninstall the app via the control panel, the same way you would uninstall any other app.
- On Linux: Delete the AppImage file you downloaded.
This section provides solutions to common problems.
On Windows, the built-in firewall may block the launcher because it needs to start a local web server. If the application fails to start or gives a connection error, you may need to manually allow it through the firewall.
Solution:
- Press the Windows Key, type
Allow an app through Windows Firewall
, and open it. - Click the "Change settings" button. You may need administrator permission.
- Click the "Allow another app..." button at the bottom.
- In the new window, click "Browse..." and navigate to where you installed the launcher (usually at
C:\Users\YOUR_USERNAME\AppData\Local\Programs\cms-launcher
). SelectLaunch Drupal CMS.exe
and click "Open". - Click the "Add" button to add the application to the firewall list.
- You will now see the launcher in the list. Ensure that the checkboxes for "Private" and "Public" are checked.
- Click "OK" to save your changes. The launcher should now be able to connect properly.
This launcher is maintained by the Drupal Association and community contributors, but it depends on the amazing static-php-cli
project, which is used to build the PHP interpreter bundled with the launcher. We heartily encourage you to sponsor that project's maintainer and/or become a Drupal Association member.
Found a bug or want to suggest a feature? Open an issue or submit a pull request. All contributions welcome!
- Node.js (the JavaScript runtime—not the Drupal module 😉)
- PHP 8.3 or later, globally installed
- Composer, globally installed
Clone this repository, then cd
into it and run:
composer run assets --working-dir=build
npm install
npm start
To run tests, run npm test
. To test the full app bundle, run npx electron-builder
and look for the final binary in the dist
directory.
This launcher is meant to get Drupal CMS up and running with no fuss, but it can't replace a full-featured development environment. Specifically, this launcher:
- Does not support deploying to hosting services (yet).
- Only supports one Drupal CMS site at a time.
- Only supports SQLite databases, since SQLite is compiled into the PHP interpreter and has no additional dependencies.
- Uses the web server built into the PHP interpreter, which is meant for testing, does not support HTTPS, and generally isn't as powerful as Apache or nginx.
- Might not be able to send email, since it relies on whatever mail transfer program is (or isn't) on your system.
- Uses PHP 8.3—the minimum required by Drupal 11—for maximum compatibility and performance.
If these limitations don’t meet your needs, consider the following alternatives:
- DDEV is Drupal's Docker-based local development platform of choice and gives you everything you need. It even has a quick-start for Drupal CMS.
- Lando and Docksal are also widely used, Docker-based options.
- If you'd rather avoid Docker, Laravel Herd is a fine choice.
- MAMP is a long-standing favorite among web developers and is worth exploring.
- For Mac users, Laravel Valet is great if you're comfortable at the command line.