Over on Make Design, the design project for installing plugins from within Gutenberg is underway.
It’s time to kick off the discussion about block plugins themselves. There’s already been some discussion of this on an earlier post about blocks in the plugin directory. That raised a bunch of great points and questions, which this project will attempt to solve.
Goal:
Our plan is to create a new kind of plugin, where *the plugin is a block*. These plugins will be familiar to plugin developers, but specially crafted so that they can be safely and seamlessly installed by users from within the Gutenberg editor. They’ll be hosted in a special new section of the existing WordPress plugin directory.
Main requirements:
- Gutenberg editor designers and developers need a way to search the plugin directory for blocks that can be seamlessly installed.
- The plugin directory needs to index and show metadata about blocks.
- Users need a way to make a simple and safe decision about whether or not to install a block.
- Site administrators need a way to manage the blocks and plugins that are available on a site.
- Plugin developers need ways to clearly communicate the purpose and features of their plugin blocks.
- The plugin review team needs to set and enforce clear rules about plugin code and behaviour.
Scope:
- We’ll be designing the architecture for a new type of plugin that is focused on single blocks. These plugins are blocks.
- The new plugin type will be a subset of the existing WordPress plugin architecture, and compatible with the existing install and update systems.
- The new plugin architecture will have some additional limitations and restrictions over and above regular plugins, such as limited UI and server-side code.
- We’ll consider the feasibility of block previews, that could be displayed inside the editor prior to installing the plugin itself.
- Security implications will be critical.
- We’ll look at the needs of developers with respect to server-side rendering and core APIs.
- We’re aiming to produce a simple initial version that can be ready in time for the WordPress 5.3 release.
Next steps:
- Scoping the plugin architecture in more detail.
- Designing the simplest block plugin that could possibly work.
- Creating a separate section within the plugin directory for block plugins.
When and where to follow along:
- The fortnightly Meta Chat, every second Wednesday at 2100 UTC (right after the Core Dev chat)
- Regular discussion in #meta between formal chats
- Important updates will be posted on Make Plugins and Make Meta
Who is involved:
- @tellyworth is leading the plugin architecture and block directory project.
- @iviolini is leading the Gutenberg UI project over on Make Design with @melchoyce
- You can get involved in any part of this by joining the regular Meta or Design meetings, or by contacting @tellyworth, @iviolini, or @melchoyce to volunteer.