The Types of Local Environment
There are numerous different options available for local development environments. These environments generally fall into one of the following buckets:
- Traditional XAMPP – Runs the server on one’s native machine. These solutions have been around the longest, oftentimes aren’t WP specific.
- New XAMPP – These tend to be WP specific, may include a slick UI, and generally hide more of the implementation details (e.g. one doesn’t see as much of the servers running on one’s system in day-to-day use).
- Vagrant/Virtual Machine – Use a full VM, usually managed by Vagrant to make provisioning quicker. This solution has been around for quite some time and tends to be simpl(ish) to implement.
- Docker/Container – Unsurprisingly, WP has seen a significant interest in using the massively popular container ecosystem. This is similar to using Vagrant/Virtual Machine, but tends to be a bit more complex to implement.
Vagrant
Prepackaged, Ready to Go
- Varying Vagrant Vagrants – Utilizes Vagrant to provide a local development environment, one of the more mature options available.
- Tom Rankin. A Developer’s Guide to Varying Vagrant Vagrants (VVV). torque, 2019.
- Good introductory article if you haven’t used VVV previously.
- Daniel Pataki. Setting Up VVV for WordPress Development. wpmudev, 2018.
- Louie Rootfield. WordPress Development with VVV. envatotuts+, 2016.
- Aleksandedr Koko. When WordPress Meets Vagrant: VVV. sitepoint, 2014.
- Zach Wills. Setting up ngrok and VVV to share your local WordPress environment with the world. 6/2015.
- Tom Rankin. A Developer’s Guide to Varying Vagrant Vagrants (VVV). torque, 2019.
- WPLib Box – Wants to be the easiest to use, offers phpStorm and XDEBUG integration with little work, but requires installing Git Bash or using PowerShell to run on Windows.
- VCCW – Stars: 1k (6/2/20)
- Last updated in 2019.
- Chassis – Stars: 591 (6/2/20)
- Roots Trellis
How To Setup
- John Hughes. How to Set Up a Vagrant WordPress Development Environment. themeisle, 2020.
Roots Bedrock
- Michael W. Delaney. Private or Commercial WordPress Plugins as Composer Dependencies. roots.io, 2018.
- How to use a git repo with Composer when working with private/commercial WP plugins (e.g., ones not available in a public GitHub repo).
- Nathan Knowler. Dockerize Local Bedrock & Sage Development with Lando. roots.io, 2018.
Docker
Prepackaged
- Wordup – Stars: 102 (6/2/20)
- Offers a CLI as well as a VSC extension. The VSC extension is currently not working, at least for me.
- They are looking to provide a full CI/CD service which looks pretty interesting.
- Christian Chung. WP Local Docker + WP Snapshots. 10up, 2018.
- Presspack – Stars: 586 (6/2/20)
- In addition to being based on Docker it includes Webpack, BrowserSync, and SCSS support.
- Wocker – Stars: 479 (6/2/20)
- Creates a Docker container running Linux on your local machine.
- Somewhat unusually, uses Vagrant to do so.
- 10up’s WP Local Docker (v2) – Stars: 201 (6/2/20)
- There is some nice documentation but then some documentation is lacking – e.g., mounting local paths to 10up containers.
- Devilbox – Stars: 2.9k (6/2/20)
- Gilbert Pellegrom. Using Devilbox for Local WordPress Development in Docker. Delicious Brains, 2018.
- Google Chrome Labs’ wordpressdev – Stars: 32 (6/2/20)
- wplib-box – Stars: 203 (6/2/20)
- Uses both Docker and Vagrant, no updates since 5/2019.
- WordPress Starter – Stars: 598 (6/2/20)
- Doesn’t come with a DB server bundled.
- Bitnami WordPress Container
Official WordPress
- Noah Allen. wp-env: Simple Local Environments for WordPress. wordpress make, 2020.
- Riad Benguella. Introducing the WordPress e2e Tests. wordpress make, 2019.
- Gary Pendergast. WordPress Local Environment. wordpress make, 2019.
- Gary Pendergast. Gutenberg Local Environment Rewrite. wordpress make, 2019.
- Block Editor Handbook: Package Reference: @wordpress/env.
How To Setup
- Official Docker Documentation: Quickstart: Compose and WordPress.
- Setting Up a WordPress Development Environment in Docker. yoast, 2020.
- David Yeiser. Docker + WordPress Setup. 2019.
- David Aguilera. Local WordPress Development with Docker. nelio, 2019.
- Kathleen Juell. How to Install WordPress with Docker Compose. digitalocean, 2019.
- John Hughes. A Quick Guide to Local WordPress Development Using Docker. themeisle, 2018.
- Urban Sanden. Local WordPress Development with Docker and Docker Compose. 2018.
- Shane Rainville. How to Deploy Your WordPress Site with Docker. serverlab, 2018.
- Fairly extensive on building Docker WP for both testing and deployment.
- Peter Suhm. Composing a WordPress Development Environment with Docker. wp tavern, 2017.
- Tom Ewer. Getting Started with Docker for Local WordPress Development. torque, 2016.
- Jim Frenette.
- O.S. Tezer. How to Dockerise and Deploy Multiple WordPress Applications on Ubuntu. digitalocean, 2014.
xAMP(P)
- WAMP
- MAMP
- XAMPP
- Instant WordPress
- Creates a portable dev environment that runs on Windows.
- Baris Unver. Toolbox of the Smart WordPress Developer: Instant WordPress. envatotuts+, 2015.
- WordPlate – Stars: 1.2k (6/2/20)
- Installs WP using Composer, uses environment variables in a .env file, utilizes Packagist for plugins and themes, provides a must-use plugin loader, integrates Laravel Mix, a webpack build tool, and installs wp-password-bcrypt by default.
- Firdaus Zahari. Better WordPress Development Workflow with WordPlate. sitepoint, 2016.
- Laragon – Stars: 1.5k (6/2/20)
- EasyEngine
- Muhammad Arul. How to Install WordPress with EasyEngine on Ubuntu 18.04 and Debian. howtoforge, 2018.
- Nick Schaferhoff. WordPress Local Development for Beginners: From Setup to Deployment. smashing magazine, 2018.
Laravel Valet
- Tom McFarlin.
- When Valet Stops Working Properly, What Do We Do? 2018.
- Using Laravel Valet for WordPress Development. envatotuts+, 2016.
Homebrew
- Tom McFarlin.
- A WordPress Development Environment (Using a Package Manager). 2018.
- Covers Homebrew, Laravel Valet, Composer, PHP.
- Homebrew, Node, and Gulp for WordPress Development. 2017.
- A WordPress Development Environment (Using a Package Manager). 2018.
Local by Flywheel
- Official Site: Local by Flywheel.
- Before acquisition by Flywheel it was known as Pressmatic. Note that WP Engine acquired Flywheel and discontinued their own DevKit in favor of Local.
- Earlier versions used Docker but to improve performance current version moves to local system with no virtualization.
- Nick Schaferhoff. How to Use Local (By Flywheel) for WordPress Development. torque, 2020.
- Claire Brotherton. How to Use Local by Flywheel for Quick WordPress Development. wpmudev, 2018.
- Chris Coyier. Using Local with Flywheel. css-tricks, 2019.
DesktopServer
- DesktopServer Official Site
- Using PhpStorm For WordPress Debugging & Development. serverpress.
- Brian Jackson. How to Install WordPress Locally the Easy Way. kinsta, 2020.
Multiple Platforms
- Colin Newcomer. Install WordPress Locally: 5 Easy Tools for Local WordPress Development. wplift, 2018.
- Covers XAMPP/MAMP/WAMP, Local, DesktopServer, Docker, and Ubuntu (natively).
- John Hughes. 5 of the Best Local WordPress Development Tools Compared for 2019. codeinwp, 2019.
- Covers DesktopServer, XAMPP, MAMP, Vagrant, and Local.
- Raelene Morey. Top 8 Best Local Testing Environments for WordPress. wpmudev, 2017.
- Covers MAMP, XAMPP, DesktopServer, WampServer, Duplicator (not really a testing environment), Instant WordPress, Bitnami WordPress Stack, and Sandbox (different from the others here).
- David Hughes. Local WordPress Development: A Rundown of the Options. 2017.
- Covers WAMP, MAMP, XAMPP, DesktopServer, Laravel Valet (Mac only), Vagrant, VVV, Trellis, Local, Chassis, Docker.
- Setting Up Your Development Environment. WordPress.com.
- While specifically targeted at VIP WP customers it has useful info. for all. Recommends VVV or Chassis.
- Gilbert Pellegrom. Vagrant vs Docker: Which is Better for WordPress Development? delicious brains, 2020.
- Originally published in 2016, has been updated in 2020.
- Tom Rankin.
- How to Spin Up Superfast Websites Using Local WordPress Development. managewp, 2019.
- Covers DesktopServer, Docker, and Vagrant.
- 5 of the Best WordPress Development Environment Options. torque, 2019.
- Covers WP Sandbox, DesktopServer, Local, Varying Vagrant Vagrants, and DevKit (since discontinued and being merged with Local).
- How to Spin Up Superfast Websites Using Local WordPress Development. managewp, 2019.