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

Hybrid Core 5.0 Offers a More Modern, Modular Approach to WordPress Theme Development

image credit: Shopify

Version 5.0 of Hybrid Core, one of the longest-running WordPress theme frameworks, is now available. Justin Tadlock celebrated 10 years with his Theme Hybrid community last month and released his new Mythic starter theme into beta. Mythic was built on top of Hybrid Core and developed in tandem with version 5.0.

The framework has been rewritten almost entirely from scratch to be a leaner, more modern starting place for theme development. Tadlock describes it as “a fundamentally different framework, rewritten from the ground up, that supports more modern PHP practices.”

“I started 5.0 with a goal of bringing the framework up to date with more modern PHP practices and code,” he said. “The first iteration of the framework was built in 2008, so it was time to get us ready for the next era of theme building.”

In nearly a decade of supporting the framework, Tadlock found that users didn’t always know how to get started building something from scratch. Many copied one of his existing themes and would add and remove things from it based on their own needs.

Version 5.0 doesn’t necessarily make it easier to build on top of Hybrid Core with its new, more complicated method of bootstrapping, new view system for templating, and requirement for using Composer. This is why Tadlock is officially recommending Mythic as the path for building a theme with Hybrid Core in the future. Most of the documentation and tutorials he plans to create in the future will be centered around the Mythic starter theme, which is nearing a 1.0 release.

For many theme developers, Mythic’s use of the BEM (Block-Element-Modifier) CSS class-naming system is their first introduction to a system of non-hierarchal, component-based CSS. Because BEM doesn’t rely on nested selectors, it’s easier for users to overwrite CSS that they want to change. Tadlock explains the benefit for child themes in a recent post about why Mythic uses BEM.

A handful of the Hybrid add-ons are now available as Composer packages, including one for breadcrumbs, customizer controls and settings, Google fonts, and a featured image script. Tadlock plans to split more parts of the framework off into packages in the future for an increasingly modular core.

Hybrid Core 5.0 requires PHP 5.6+ (with 7.0+ recommended) and WordPress 4.9.6+. Tadlock will support Hybrid Core’s 4.x series for at least another year to give theme authors time to adapt.

Posted on

Gutenberg is Slowly Rolling Out to WordPress.com Users

As part of the roadmap unveiled at WordCamp EU earlier this year, WordPress.com has started rolling out Gutenberg to a subset of users.

Try Gutenberg Call-out on WordPress.com

According to a WordPress.com Happiness Engineer, the team is testing the implementation to determine the best way and time to enable it. Users will not be able to use Gutenberg unless their theme is updated to support blocks and the various alignment options.

Theme Wranglers are already in the process of adding support to WordPress.com’s nearly 100 free themes.

A quick search of the WordPress.com support forums for Gutenberg provides some insight into what users think about the new editor. For example, this user provided feedback on the use of so many icons without displaying their textual equivalent.

For now, Gutenberg is opt-in but eventually will be opt-out. Once Gutenberg is made available to a wider audience, support documents and official blog posts will be published to inform users about the new editor.

Posted on

New WP Glossary Site Translates WordPress Techspeak into Plain English

Anders Norén has launched a new website called WP Glossary that contains definitions for terms that people encounter when using WordPress. The resource was born out of a need to provide documentation for client projects.

“The last time I updated the glossary for a new client documentation, in the middle of May this year, it hit me that there must be a website for this,” Norén said. “A list of WordPress definitions written not for WordPress developers, but for those who manage WordPress websites either as part of their work or in their spare time.”

Norén said he found resources written for developers but nothing satisfactory for regular WordPress users. Inspired to fill this gap, he bought a domain name and built the site over the next couple weeks. WP Glossary contains definitions for nearly a hundred WordPress-specific and industry-related terms, with more than 25,000 total words.

image credit: Anders Norén

Norén, who has recently jumped into client work with a new agency, is better known for his popular minimalist themes on WordPress.org. His 17 themes have a cumulative rating of 4.97 out of 5 stars and more than 2.1 million downloads. He designed the WP Glossary site, wrote all the definitions, and credits Thord Hedengren for feedback on the design and editorial assistance.

Each glossary term includes a plain English definition and common use cases with a bit of WordPress history sprinkled in. The terms also link to related documentation and some also have related WordPress.tv links. The Default Themes term is the longest article on the site with 1,744 words. Each term has a “Send Corrections” link that visitors can use if they see a term that could be improved.

WP Glossary was enthusiastically received when Norén announced it on Twitter. Many commented that the site will be useful for meetups with members who are new to WordPress and need a quick way to look up some of the jargon they encounter.

Norén’s glossary project overlaps with a glossary the WordPress Marketing team published earlier this year. WP Glossary is more in-depth and contains less techspeak than the marketing team’s copy. It is also targeted at people who use WordPress as part of their job or as a hobby.

The sheer volume of terms on this site reveals how much insider language one encounters while managing a WordPress site. If you’re working in the WordPress world every day, it’s easy to forget how unfamiliar these terms are to new users. WP Glossary is released under the Creative Commons Attribution 4.0 International license (CC BY 4.0) so freelancers and agencies that want to duplicate, modify, and share the material have permission to do so with attribution.

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.