Playground Meeting Summary: June 27, 2025


The WordPress Playground team convened on June 27, 2025, to discuss recent advancements, ongoing work, and future plans. Key updates included significant enhancements to Playground’s core functionalities, particularly around networking and Blueprints, along with improvements to the CLI and documentation.

Key Announcements & Highlights

Playground Enhancements

A major highlight was the default enabling of networking on playground.wordpress.net. This highly requested feature, now active by default, allows new Playground instances immediate network access, greatly enhancing its utility for various demos and use cases. This was made possible by performance improvements in the initial /wp-admin/ loading, specifically from PR #2296 and PR #2295.

Other significant Playground updates include Improved PHP Instance Handling, where the PHP Process Manager now offers better support for acquiring non-primary PHP instances(PR #2274), improving stability for ad-hoc PHP runs and resolving a race condition. Simultaneous Network Calls are now possible(PR #2286), allowing multiple, asynchronous network calls to run concurrently across co-existing PHP instances within the same web worker.

Blueprints v2 Runner Shipped

The Blueprints v2 runner (blueprints.phar) has been added to the @wp-playground/blueprints package. While the v1 runner remains the default for now, this addition paves the way for the next generation of Playground Blueprints.

CLI & File System Updates

The team also shipped several improvements to the Playground CLI and file system, including:

  • CLI Help Message Clarity with updated help messages for --mount-dir and related flags for better user understanding(PR #2287)
  • PHP_BINARY Defined to consistently define the constant when running PHP.wasm in php.cli() mode for compatibility (PR #2288)
  • Shared Filesystem Fix to ensure only NODEFS nodes are considered shared filesystems within the PHP Node environment, resolving a FS error 44 (PR #2300)
  • CLI Code Refactor where the parseOptionsAndRunCLI() logic was moved to run-cli.ts to streamline future development(PR #2297).

More Translations Added

Thanks to @shimotomoki for significant progress has been made on internationalization, with Japanese translations added to the”About Playground” (PR #2282), “Build” (PR #2290), and “Launch” (PR #2292) sections of the documentation. The team encourages further contributions from community members interested in translating the Playground documentation into their native languages.

Team Contributions

Team members shared their ongoing work and discussed various topics:

  • SQLite Driver Adoption: @janjakes is focusing on adopting the new SQLite driver and further testing plugin compatibility.
  • Blueprints v2 Polishing: @zieladam is polishing the Blueprints v2 for Playground CLI Pull Request. The team noted the potential for Playground CLI to run plugin tests, specifically mentioning the Plugin Check (PCP) plugin as a promising use case.
  • CLI README Update: @fellyph is adding a new README to the CLI, inviting collaboration for reviews.
  • OPcache Support: @zaerl is actively testing OPcache support and measuring performance, while also investigating an out-of-memory error. The discussion touched upon the potential performance gains and the challenges of debugging WASM memory issues.
  • Xdebug Support: Work on Xdebug continues, with a recent PR enabling it on Node 23. The goal is to extend support to Node < 23 and then to browsers, with exciting prospects for connecting Xdebug to Chrome DevTools.
  • UI/UX Discussions: The team discussed the Playground web version’s menu structure, particularly the presence of two menus with similar options. While acknowledging the current discoverability benefits of the top-right popup, it was recognized that the Playground UI could benefit from further UX work, referencing existing “website redesign” issues on GitHub.
  • PHP Version Support: The team discussed the strategy for dropping support for older PHP versions (like 7.2) once WordPress core ceases to support them. The consensus was to likely drop support on the first major problem with that version, rather than immediately on day one of a new core release.

The meeting was productive and full of discussions around new features and improvements, until the next meeting. To keep the discussion going. Please join our #playground channel at wordpress.slack.com