Drupal 8 Module (Distro!) of the Week: Lightning

Each day, new functionality is being created for and built with Drupal 8. At the same time, more and more Drupal 7 modules are also being migrated to the Drupal community’s latest major release. In this series, the Acquia Developer Center is profiling some of the most prominent, useful modules, projects, and tools available for Drupal 8. This week: the Drupal 8 Lightning distribution.

John Kennedy (johnkennedy on Drupal.org)--Lightning Product Manager and Program Manager for Acquia's D8 Module Acceleration Program (D8 MAP)--has been working with Drupal since 2006, when he took on a Drupal 4.7 project for a non-profit youth news organisation that might have been weighed down by a few too many modules :-) ... Prior to his work at Acquia, John had his own Drupal shop in Australia and was the UK Regional Director of Commerce Guys.

What does the Lightning distribution do?

“The Lightning Distro gives developers a starter kit for building great authoring experiences in Drupal 8,” explains product owner, John Kennedy. “By combining Layout, Media, Workflow and Preview capabilities into a single distribution, we’re able to offer a simplified, consistent authoring experience. By making choices about how these features are implemented, commitments to maintaining the distro, upgradability, and a suite of automated tests, we also offer an easier build and a reduced maintenance burden for developers.”

As of Lightning’s 1.0 GA release in June, 2016, there are nearly 400 sites running Lightning including, appropriately, the Acquia Lightning homepage! Visit lightning.acquia.com for instructions on installing Lightning with Composer, upgrade documentation, roadmap information, and more.

Acquia Lightning's homepage: lightning.acquia.com

Why is the Lightning distribution important to developers?

“Lightning gives developers a fast onramp to Drupal 8. Choosing modules can be time-consuming; it can be hard to decide which technical approaches to take, especially while also learning a new system like Drupal 8. Lightning gives you a minimal, pre-selected set of authoring functionalities, powered by a carefully chosen, pre-configured and documented set of modules to include in your build.”

Beyond this, Lightning provides a lightweight framework for further extension that is tightly coupled with Drupal 8’s design patterns and functionality. John continues, “We don't try to provide absolutely everything out-of-the-box. This is a faster way to a great authoring and publishing experience built with Drupal.” Lightning comes ready to be used in continuous integration workflows. It includes more than 60 automated tests covering its major functionality. This gives developers a much more solid base to work with than an entirely custom, one-off selection of contributed modules with limited or unknown test coverage. It makes Lightning a ‘safer’ environment for further extension and development.

According to John, Lightning is somewhere in between the framework- and the product-distros of the world. Panopoly, for example, is more of a foundation for site building that specifically addresses layouts. While Thunder, built and maintained by Hubert Burda Media, is an example of an “out-of-the-box” product distro for publishers.

“We focus on developers first,” John is adamant, “This is our advantage ... and yours as a developer or content author. Authoring experiences in Lighting, even complicated or sophisticated ones, will be easier to configure. And developers can focus on what their authors and businesses need.”

“We try not to put anything in Lightning that needs to be undone by a developer.” That’s a frequent concern of developers when they approach distributions. Some distributions have (or have had) certain modules or burdensome configurations that developers have to undo before they can use them. “We try to stick to Drupal and the modules contained in our distribution. This is Drupal, great Drupal, faster ... That’s our hope.” Furthermore, John clarifies that Lightning won’t interact “destructively” with other modules. For example, the Display Suite Module isn’t in Lightning even though the team expects many users of the distro to use it.

What value does the Lightning distro provide to site owners and businesses?

When you work with a site built on top of Lightning, you get the extensive functionality and flexibility of Drupal 8 core, with the added benefit of great working experiences in the following areas ... and Lightning even lets you activate and use only a selection of its functionality. If you don’t need it all to start with, it’ll still be there for you if and when you do.

  • Layouts: Non-technical users can configure page layouts and digital experiences with drag and drop tools right in the browser, with no need for developer intervention.
  • Media: Content authors can embed images, videos, social media and other assets from Drupal or external sources into Drupal, so they can create richer and more engaging sites, content, pages, and experiences.
  • Workflow: Users can configure and manage customized workflows that keep content moving through review and approval stages with the right checks and balances in place, to get everyone on the same page
  • Preview: Users can preview (and modify if necessary) how content and changes look to visitors before they publish them to the web.

The end result of this powerful combination of authoring and publishing functionality is ... Drupal Lightning. It enables content and marketing professionals to make Drupal part of their everyday efforts building, managing and delivering digital experiences to their audiences without always having to rely on ... bother ;-) ... developers to do the work for them.

Here’s a quick demo of creating and reusing media entities in Lightning.

What does the Drupal community gain from the Lightning distro?

One straightforward benefit is that all the investment in Lightning’s constituent contributed modules--build, upgrade, or improvement financed by D8 MAP or through internal work at Acquia--will benefit every other Drupal 8 project that uses those modules.

Lightning gives the Drupal community a great example of how to build Composer-enabled Drupal distributions. With Composer Manager deprecated, and as modules begin to require external dependencies, Composer is the way forward. Lightning can also serve the starting point for building other distributions (Watch this space for an upcoming blog post on this topic from Adam Balsam!).

Lightning is completely open source, confirms John. “We have an open issue queue on Drupal.org where we post all the upcoming user-stories and roadmaps for all versions. Our roadmap is open to the community, so people can contribute suggestions, know when releases are scheduled, and what is included in them. Open source tends to be the best way to let developers specifically engage with a product. They can dig into the code and documentation when they have questions. Even though we’re driving development with a dedicated team, we want and appreciate community feedback and we want to hear what people are doing with Lightning. This is all part of having a completely open development process.”

Has Drupal 8 changed the Lightning distro? If so, how?

Acquia built a Drupal 7 distribution called “Lightning” that was a tool for giving great demos with Drupal, but wasn’t intended for building production sites. D7 Lightning did serve as a prototype for some concepts like layout creation and being able to insert media.

John explained three important points relating to Drupal 8 Lightning. “When Drupal 8 was released, we didn’t port Lightning over; instead we started from scratch on a new codebase. It took about 6 months to get to a beta and another 3 to get to 1.0,” John explains a fundamental difference and continues, “The way we install is different: we use Composer. This is another possibility open to us in Drupal 8 that puts us right in the mainstream of today’s PHP practices.”

“The third point is that we have committed to building and maintaining Lightning as a fully-fledged product for the duration of the Drupal 8 lifecycle and have a dedicated team to support this. Acquia’s Support, Operations, and Engineering departments are all behind us, helping to get Lightning into the hands of users.”

“Thanks to the many external developers who helped us build modules that are now in Lighting as a part of the Drupal 8 Module Acceleration Program and the many Drupal experts at Acquia who helped us with requirements, technical solutions, and validated our designs and architecture.”

Get your Lightning on!

Visit the Acquia Lightning homepage for instructions on installing Lightning with Composer, upgrade documentation, roadmap information, and more.