wp-env is one of the alternatives to run a WordPress Environment; by default, it uses Docker. What if you could run a full WordPress development environment without installing Docker? With the new experimental Playground runtime for wp-env, you can.
One command. Zero Docker. Full WordPress:
npx @wordpress/env start --runtime=playground
This launches a complete WordPress environment in seconds using Node.js.
Why does this matter?
The Playground runtime offers a lightweight alternative for WordPress development. No extra software installation required; if you have Node.js, you’re ready to go.
What makes the Playground runtime appealing:
- Zero additional installation – Just Node.js, no Docker setup needed
- Lightweight bundle – WordPress Playground runs lean with minimal resource usage
- Fast startup – Get a running WordPress instance in seconds
- Works everywhere Node.js runs – Linux, macOS, Windows, CI pipelines
What works in both runtimes?
The good news: most wp-env features work identically in both runtimes. Here’s the official comparison:
| Feature | Docker | Playground |
|---|---|---|
| Plugin/theme mounting | ✅ | ✅ |
| Custom PHP versions | ✅ | ✅ |
| Xdebug support | ✅ | ✅ |
| Multisite | ✅ | ✅ (experimental) |
| MySQL database | ✅ | ❌ (SQLite) |
| phpMyAdmin | ✅ | ❌ (planned) |
| SPX profiling | ✅ | ❌ |
| Separate tests environment | ✅ | ❌ |
| wp-env run command | ✅ | ❌ |
The Playground runtime uses SQLite instead of MySQL. For most WordPress development, you won’t notice the difference; your plugins and themes work the same way.
Multisite support is available but hasn’t been extensively tested yet, so treat it as experimental for now.
phpMyAdmin is not yet supported in the Playground runtime. Once it becomes available in the Playground CLI, wp-env will integrate it. You can already use phpMyAdmin directly with the Playground CLI:
npx @wp-playground/cli server --phpmyadmin # serves at http://127.0.0.1:9400/phpmyadmin
npx @wp-playground/cli server --phpmyadmin=/custom-path # serves at http://127.0.0.1:9400/custom-path
What about my existing configuration?
The Playground runtime supports most existing .wp-env.json configuration files:
{
"core": "WordPress/WordPress#6.8",
"plugins": ["./my-plugin"],
"themes": ["./my-theme"],
"phpVersion": "8.2"
}
This configuration works with both runtimes. Once you start wp-env with a specific runtime, wp-env remembers your choice. Subsequent commands wp-env stop automatically use the same runtime. To switch runtimes, destroy the environment with wp-env destroy and start fresh with your preferred runtime flag.
When should you still use Docker?
The Playground runtime is experimental. Choose Docker when you need:
- A separate test environment – Docker’s wp-env creates an isolated instance for running tests
- The wp-env run command – Execute arbitrary commands inside the environment
- MySQL database – Some plugins require MySQL-specific features that SQLite doesn’t support
- SPX profiling – Performance profiling with the SPX extension
- SSH access – Shell into the environment directly
For development workflows that require deep environment access, running WP-CLI commands inside the environment, debugging PHP processes, or customizing the server stack, Docker remains the right choice.
Resources:
Share your feedback
This feature is experimental, and your feedback shapes its direction. Does it work for your workflow? What’s missing? What breaks?
Share your experience at #playground Slack channel.
Props to Riad Benguella(@youknowriad) for announcing and advocating this feature, and to Jan Jakeš(@janjakes) for his work on phpMyAdmin and the Playground CLI.