Users should be able to easily embed an instance of Playground and configure its options without needing to code. An open-source Gutenberg block, released as an NPM package, would allow them to do this.
Prior Art
Currently, a closed source block exists as part of the wp.org theme repo and is used to render the settings button in the browser window on https://developer.wordpress.org/playground/. This block makes use of the install themes and plugins functionality and has an opinionated list of them, but exposes no other features. A generalized block could be composable and enable extending.
Implementation Ideas
The generalized block MVP could be just a queryString attribute and an iframe.
A more advanced version could expose each Playground query string flag as a Gutenberg control.
There's overlap here with WordPress/wordpress-playground#128. Essentially a Gutenberg block would be similar to the feature gallery but would allow users to enable those features from within the Gutenberg editor. Perhaps there are considerations to take into account when implementing both.
This would enable live code snippets in learn.wp.org courses.
Users should be able to easily embed an instance of Playground and configure its options without needing to code. An open-source Gutenberg block, released as an NPM package, would allow them to do this.
Prior Art
Currently, a closed source block exists as part of the wp.org theme repo and is used to render the settings button in the browser window on https://developer.wordpress.org/playground/. This block makes use of the install themes and plugins functionality and has an opinionated list of them, but exposes no other features. A generalized block could be composable and enable extending.
Implementation Ideas
The generalized block MVP could be just a queryString attribute and an iframe. A more advanced version could expose each Playground query string flag as a Gutenberg control.
List of Features to Enable
Theme installation
Plugin installation
https://github.com/WordPress/wordpress-playground/pull/119
https://github.com/WordPress/wordpress-playground/pull/110
https://github.com/WordPress/wordpress-playground/pull/71
Switching PHP and WP versions
Related
There's overlap here with WordPress/wordpress-playground#128. Essentially a Gutenberg block would be similar to the feature gallery but would allow users to enable those features from within the Gutenberg editor. Perhaps there are considerations to take into account when implementing both.
This would enable live code snippets in learn.wp.org courses.