Posted on

Gutenberg Cloud: A Cross-Platform Community Library for Custom Gutenberg Blocks

During their presentation at Drupal Europe, the Frontkom team behind the Drupal Gutenberg project announced that they are working on a block management system called Gutenberg Cloud, a collective library of blocks online.

The library will offer a content repository for custom Gutenberg blocks, such as forms, a call-to-action section, product grid, or even a web component. Since the blocks are JavaScript-only, they would work across both Drupal and WordPress alike, so developers can build for both platforms simultaneously. The Gutenberg Cloud creators are aiming to facilitate a new level of cross-platform sharing that few envisioned when the Gutenberg project began.

“Gutenberg to us is much more than just another module,” Frontkom CIO Per André Rønsen said during their presentation at Drupal Europe. “We think of it as a platform for brand new features. We are very excited about the sharing/community aspect and the possibilities here. We want to make it easy to share and reuse custom blocks across pages, across projects, across companies, and even across publishing platforms. Drupal has always been great at sharing backend style of code. Now let’s make it great at sharing frontend code as well. This is why we’re working on a block managing system.”

Gutenberg Cloud would provide a plugin for WordPress and a module for Drupal (and eventually other applications) that would enable users to browse, filter, and discover blocks within the admin and download the ones they select. Early mockups I previewed show an interface similar to the theme and plugin browsers inside the WordPress admin.

A cloud-based block service solves a few problems that Gutenberg early adopters are already experiencing when hunting for blocks. WordPress theme and plugin shops have have been releasing their own block collections bundled into a plugin, but it’s not easy to discover or browse the individual blocks. Having blocks available on Gutenberg Cloud would prevent developers from having to create a new module or plugin for each individual block. It also prevents users from having to download an entire collection of blocks in a plugin when they really only need one or two of them.

Gutenberg Cloud Will Launch as a Community Project, Developers Contribute by Publishing Packages to NPM

Rønsen said they plan to launch Gutenberg Cloud as a community project. Any developer can contribute blocks by creating an NPM package and tagging it with “gutenberg-cloud.” The description on the cloud service outlines their intentions: “Code once, use everywhere: As Gutenberg blocks are CMS-agnostic, we want to provide an ecosystem all systems can connect to.”

An example Hero section block published to NPM

“We imagine everything from freelancers to big agencies and even community minded non-profits to contribute,” Rønsen said. “When people benefit from a better user experience, they tend to want to pay it forward. We have already talked to people in both communities wanting to contribute with code, so that is a great start for the platform.”

I asked if his team envisions block creators being able to sell access to their blocks in the future. He said his team is open to finding a payment solution for commercial blocks but only if the community demands it.

“Personally, I would be skeptical about committing to a community project that had a very commercial edge,” Rønsen said. “I think it’s important that the project stays focused on open source contributions, with a sharing-is-caring attitude. It’s the only language we know in Drupal. However, there is nothing wrong in providing high quality content and getting paid to do it. That’s why it’s on our roadmap to facilitate a payment solution for premium blocks – if the community wants it. It’s not central to the success of the platform, but I imagine it could be a great way to make some money for a skilled designer.”

Rønsen said his team plans to launch Gutenberg Cloud sometime later this year after completing internal testing and an invitation-only closed beta with a different companies. One of the most challenging aspect of the project is creating a system that can handle updates.

“By default users will get the latest stable release for the block from the author,” Rønsen said. “There will be a way to lock into a specific version and to version control that in Git, however. The plugin update system is a good analogy, but the infrastructure is completely outside of WordPress core. There are also some issues we haven’t solved yet regarding updates; it’s hard to make a system that doesn’t require a high maintenance effort for block developers.”

The Gutenberg Cloud project is contingent upon Gutenberg development continuing on a path towards being a library that is decoupled from WordPress. Last week Rønsen told the Tavern that his team hopes “that Gutenberg core devs will catch onto the vision of Gutenberg as the ‘editor for the open web’ — not just for WordPress.”

Gutenberg team member Gary Pendergast indirectly acknowledged this in a recent blog post that affirmed the Drupal Gutenberg project and reiterated WordPress’ mission to democratize publishing.

“One of the primary philosophies of Gutenberg’s technical architecture is platform agnosticism, and we can see the practical effects of this practice coming to fruition across a variety of projects,” Pendergast said.

“From early experiments in running the block editor as a standalone application, to being able to compile it into a native mobile component, and now seeing it running on Drupal, Gutenberg’s technical goals have always included a radical level of platform agnosticism.”

If the Drupal community ends up adopting Gutenberg for its core editor, the shared library presents an unprecedented opportunity for deeper collaboration across the two publishing platforms. As an agency that has done client work for publishers on both CMSs, Frontkom saw the potential before many others and took it upon themselves to fork Gutenberg for Drupal. This is the beauty of open source software in action.

“WordPress has many advantages that make it so popular, but hoarding those to ourselves doesn’t help the open web, it just creates more silos,” Pendergast said. “The open web is the only platform on which publishing can be democratized, so it makes sense for Gutenberg to work anywhere on the open web, not just inside WordPress. Drupal isn’t a competitor here, we’re all working towards the same goal, the different paths we’ve taken have made the open web stronger as a whole.”

Rønsen said he could see other applications and e-commerce platforms like Magento benefitting from better page-building tools. His company has a special interest in publishers and plans to release a set of open source tools for building news front pages later in 2018. Rønsen said he is hopeful the Drupal Gutenberg project can evolve alongside WordPress as it enters into the site building and customization phase of the project.

“I’m hopeful that the Gutenberg project will stay decoupled from WP one way or another,” Rønsen said. “This will leave room for Drupal to innovate on top of it. It could even be the case that the page building tools and customizer integration in WP will play nicely into the current architecture. In any case, I believe the basics of the editor and block concept will continue to be a good fit for Drupal. There is already some consensus out there on how to use Gutenberg for page building. A great example, is Big Bite’s work with Amnesty. If the continued experience is anything like that, I think we have a perfect match.

Posted on

Gutenberg Block Library Provides a Searchable Index of Individual Blocks

An avalanche of blocks is pouring into the WordPress ecosystem ahead of Gutenberg’s inclusion in core. A few block collections, such as Atomic Blocks, Stackable, and CoBlocks, can be found on WordPress.org, but it’s not easy to search the individual blocks they contain. Other collections and standalone blocks are spread across the web. WordPress theme developer Danny Cooper has built a centralized library of Gutenberg blocks that are currently available to extend the new editor.

The library loads blocks into a grid with infinite scroll. It is searchable, so visitors can easily find individual blocks that are part of a collection. Blocks are also tagged, which makes it possible to compare a group of similar blocks. Individual listings display screenshots of the block in action and its settings panel, as well as a link to the author and a link to download.

The Gutenberg Block Library currently has more than four dozen blocks. Visitors and block creators can submit a block that is missing from the library.

Cooper is the owner of Olympus Themes, a small collection of free and commercial niche-focused WordPress themes. He has also created his own blocks collection called Editor Blocks, which focuses on blocks for business sites. His corresponding Editor Blocks theme is available for free on WordPress.org with support for all the business blocks.

“As a theme developer I’d been waiting for a way to build themes in a way where what you see on the backend matches what you will see on the frontend,” Cooper said. “That can be achieved to some extent using the Customizer, but it’s hard to craft more than one complex page using that method.”

Cooper comes from a PHP/jQuery background and said he didn’t have a strong enough understanding of ES6, Webpack, Babel, React to create Gutenberg blocks right away. The learning curve was a little steep but after getting a handle on the basics he is now able to make small contributions to the Gutenberg project.

“It felt like I was hitting a brick wall every five minutes when I started,” he said. “Zac Gordon’s course helped me get past that stage. The #core-editor slack channel was a big help too. Other than that I just studied the code of the core blocks and used Google. As my knowledge increased I’ve tried to reach out by submitting bug reports to other Block Libraries and making minor contributions to the Gutenberg project on Github.”

WordPress.org may be able to benefit from a centralized block library in the future, as people will be frequently searching for blocks after Gutenberg lands in core. Cooper said if WordPress.org had a library like this it might even be possible to find and install blocks from inside Gutenberg.

“I could build a block that searches my library but it wouldn’t be able to install them as most are part of a ‘collection,’” Cooper said. “I’m not sure if in the future the ‘collections’ will continue to grow or people will move towards releasing individual blocks.”

In the meantime, the Gutenberg Block Library provides a helpful resource for early adopters. Browsing through the listings, it’s exciting to see the variety of block functionality that the community is creating. Users who fully embrace Gutenberg in WordPress 5.0 will find dozens of blocks (and perhaps hundreds by that time) available for the new editor, if they know where to look.

Posted on

Gutenberg and Classic Editor Plugins Pass 200,000 Active Installations, WordPress 4.9.9 Planning Underway

photo credit: reingestalter numeral types(license)

It has been three weeks since the “Try Gutenberg” prompt was sent out in WordPress 4.9.8 and the plugin has now passed 200,000 active installations. The callout has increased the visibility of the Gutenberg project and brought necessary feedback to the development and design of the new editor.

Prior to WordPress 4.9.8, Gutenberg reviews held a 2.7-star average on WordPress.org. Negative reviews continue to pour in and the average rating has slipped to 2.3 stars. Users are reporting that the new editor is too complicated, cumbersome, and that it offers an inferior writing experience. A few positive reviews are sprinkled in between, calling the editor a “necessary step forward,” and those reviewers seem hopeful that others will feel the same once they get past the learning curve. The vast majority of reviews, both positive and negative, report that Gutenberg’s interface is not yet intuitive to use.

The Gutenberg team’s responses to reviews have improved to be less “canned” since the initial reactions a few days after the Gutenprompt went out. However, the team still appears to be combing the feedback for bugs with the existing interface. Overall, the team’s responses are unified in a general unwillingness to admit that there are critical flaws preventing the interface from being more well-received.

Active installations of the Classic Editor plugin, the official antidote for those do not wish to adopt Gutenberg when it ships in WordPress 5.0, have climbed to more than 200,000. This number is about equal to the number of sites that have Gutenberg active. The Gutenberg team does not view Classic Editor installs as an important metric for understanding Gutenberg adoption or rejection but rather see these installs as a healthy intermediary step for sites keeping the same workflow while preparing for Gutenberg.

In response to recent discussion surrounding the ClassicPress fork of WordPress, Matt Mullenweg said, “No plans to ever have direct vote determine strategic direction in WP, but we are having a bit of a referendum in the adoption of the Gutenberg and Classic Editor plugins, people are voting with their usage. The people are deciding.”

This is essentially true in that users can decide if they want to adopt Gutenberg or not, for as long as the Classic Editor is supported. The Classic Editor plugin is an option people demanded but now the reality of two different admin experiences is nearer than before. The notion of a fork, though perhaps not a serious threat to the project, makes it painfully clear what some users are willing to do in order to avoid Gutenberg.

With the number of Classic Editor plugin installations on the rise, WordPress is headed towards a fractured admin experience. For some it may be a healthy transition option, but in the end, the number of Classic Editor installations indicates how many sites will be running an alternative editing experience because site owners are either not ready or not willing to adopt Gutenberg.

At some point in the future, WordPress will need to unite the editing experience, either by winning these users over to Gutenberg or by discontinuing support for the Classic Editor. In the meantime, WordPress product developers will need to provide support for both editing experiences or go all in on one or the other. It has the potential to erode WordPress’ momentum for a few years, especially if Gutenberg doesn’t become more intuitive.

WordPress 4.9.9 Is Expected to be a 6-8 Week Maintenance Cycle

WordPress contributors met this week to discuss WordPress 4.9.9.

“As of now there’s no specific timeline for 4.9.9,” Jeff Paul said. “That will get set once release leads are in place. However, I’d like to try and finalize leads in next week’s meeting or shortly thereafter so that we can begin 4.9.9 planning and coordination as we get into September.” Paul requested contributor submit nominations for release leads, for themselves or others, ahead of next week’s meeting.

“Until we have a confirmed timeline and plan for 5.0, my assumption is that we’ll continue with our minor release cadence of ~6-8 weeks with specific focus on items needed in support of 5.0,” Paul said.

During his announcement at WordCamp Europe in Belgrade, Matt Mullenweg said WordPress 5.0 could happen as early as August. It’s now looking more likely that 5.0 will drop closer to the end of the year. This gives WordPress users and developers more time to prepare their sites to be compatible with Gutenberg and ready to take advantage of the new features it offers. The schedule for releasing WordPress 5.0 is not yet set but the release is expected to happen in 2018.

Posted on

WordPress to Support Classic Editor for “Many Years to Come,” Plugin and Theme Markets Expected to Drive Gutenberg Adoption

During the 2017 State of the Word address, Matt Mullenweg announced the availability of the Classic Editor plugin for site owners who are not ready to adopt Gutenberg when it makes its debut in WordPress 5.0. Since its release, the community has speculated about what the plugin’s active installation numbers mean and how long it will be supported.

Matt Mullenweg has confirmed that support for the Classic Editor will be available for “many years to come,” which should come as a relief to those who feared that WordPress would drop support for the old editor after a year or two.

“I love that people are using the Classic Editor plugin!” Mullenweg said in comment on a recent post. “There is an infinite number of ways that WP can be used and not all will be ready for Gutenberg when 5.0 is released, Classic allows people to still be able to update core and stay current with releases, and with the click of a button try out Gutenberg again in the future if they want to. It’s also trivial to maintain because Gutenberg also uses TinyMCE, so Classic Editor users will still get improvements and updates to TinyMCE — I won’t say ‘forever’ but I don’t see any reason why we can’t maintain classic for the edit screen for many years to come.”

These assurances about the continued availability of the classic editor mean that WordPress product developers will need to decide if they want to provide support for both editing experiences or go full steam ahead with Gutenberg, limiting support to WordPress 5.0+. We don’t yet know how many users will be installing the Classic Editor after WordPress 5.0 is released but that may inform more product decisions in the future.

The Market Will Drive Gutenberg Adoption

During the Q&A following the State of the Word in 2017, WordPress developer Kevin Hoffman asked a question about the prospect of developers having to support two different editing interfaces:

Hearing you suggest the Classic Editor plugin and different ways to undeclare support for Gutenberg leads me to this idea that we are headed towards a split admin interface with no finality to the transition, meaning that I don’t see a time in the future where everyone will be on Gutenberg. We will always have these people in classic mode. As plugin and theme developers, we will always have to support two different types of users. How do we reach that point where we are past the transition, however long it might take, where we can not have this box of chocolates effect where you click “edit post type” and you never know what you’re going to get?

Mullenweg said his hope and expectation, based on how this has worked out with new interfaces in the past, is that over time product developers would adopt the latest interface. He cited the Customizer as one example where one is now very hard-pressed to find a theme developer who is rolling their own options panel after the Customizer was introduced as the new standard. It was just three years ago in 2015 when WordPress.org began requiring theme options to be built using the Customizer and now it is used everywhere.

“The truth is, if you are a plugin or theme developer, people are going to expect things in Gutenberg, so you really need to develop for Gutenberg,” Mullenweg said. “And then, at some point, I’m totally ok if you drop support for the Classic [Editor]. There will be themes and plugins that will say you need to have Gutenberg, [WP] 5.0 or newer if you want to use this.

“We already have that existing now. Plugins only support so far back in PHP in WordPress. There will be plugins that don’t support under WordPress 5.0. It’s not going to be that much different from supporting different WordPress versions where people choose sometimes to go way way way back, sometimes a year or several years, and support WordPress 3.8 and 3.9. And some don’t bother anymore. There’s lots of APIs and other things that changed during that time. At some point you just have to make a cost benefit analysis and do things like maybe Yoast is doing for upgrading PHP, and say, ‘Hey, if you really want the best of this, check out this new thing.’”

As Gutenberg blocks become the standard way of extending WordPress’ editing and customization capabilities, the market will drive its adoption. This is already happening with new blocks and block collections being released every day. The new Gutenberg Block Library offers a glimpse of that and there are many more blocks on GitHub that are not yet commercially marketed.

During that December 2017 Q&A, developers seemed to be excited about the Gutenberg demos they had just seen but their uneasiness was palpable in their questions. Now, eight months later, the current proliferation of Gutenberg themes and plugins demonstrates that WordPress developers are ready to embrace the new editor and build the creative extensions that Gutenberg’s creators’ had always anticipated.

“I’m really looking forward to seeing what the design and developer community can build with it and where their imaginations can take us from there,” Gutenberg technical lead Matías Ventura said when I interviewed him in June. “Core is going to supply the infrastructure and the main building blocks but it’s everything that can be built around it that’s going to be exciting, as always with WordPress.”

The extension ecosystem that made WordPress a success in the first place is going to be a key influence in driving adoption for the new editor. Major players in the product market are not waiting to see how users react to the new editor before building their Gutenberg-compatible interfaces. Users may not be compelled by the writing experience, but Gutenberg’s block model will provide a better framework for site customization and a core standard for page builders that interface with WordPress. If the blocks pouring into the ecosystem right now are any indication, the plugin market surrounding Gutenberg is going to offer an exciting variety of tools for site building.