With the 8.0.0 release of Drupal scheduled for November 19th, I wanted to share the Panopoly 2.x plan for Drupal 8 that David Snopek and myself developed. For those who do not know, Panopoly is powerful “base distribution" of Drupal designed to be both a general foundation for site building and a base framework upon which to build other Drupal distributions. Panopoly was developed in 2012 as a partnership with UC Berkeley (watch our presentation from Drupalcon Denver) but has been growing steadily as a community project ever since with over 10,000 sites using Panopoly today!
In my opinion, one of the primary reasons for Panopoly’s growth and success is that it provides a much stronger first time & end user experience out of the box than Drupal 7 core. A number of essential modules are included and 50+ features & improvements are provided to make Drupal both easier to use and more powerful when you do.
I am happy to report that much of this functionality is now part of Drupal 8 core and will no longer need to be supported in Panopoly! Utility modules like Views, Link, Entity Reference, Navbar, Migrate, and Date are included in core. Helper modules like jQuery Update, UUID, File Entity, and Strongarm are no longer needed. UI modules like Backports, Save Draft, Simplified Menu Admin, and Date Popup Authored have their functionality included in core. WYSIWYG modules like WYSIWYG, WYSIWYG Filter, Linkit, Image Resize Filter, and Caption Filter are now part of Drupal 8 core’s WYSIWYG. In fact, most of the contrib modules bundled with Panopoly are already part of Drupal 8 core!
As a result, the primary work needed to release Panopoly 2.x for Drupal 8 is to re-implement the Panels Magic that is the heart and soul of Panopoly. Namely an end-user, in-place editor for Panels known as the “Panels IPE". As outlined in our Drupal.org plan, to get this upgraded the following things are necessary:
- Panels Module + Panels IPE Module: As outlined in David Snopek’s post on Panels & Page Manager for Drupal 8, there has been a lot of progress updating these modules to Drupal 8. This work will need to be completed and the Panels IPE module specifically will need to be upgraded.
- Creating New Blocks in the IPE: In Drupal 7, this was done by Fieldable Panels Panes. In Drupal 8, custom blocks are already fieldable entities so we just need to be able to create new instances of them from the IPE!
- Panelizer: This functionality is necessary to take over rendering of nodes, provide defaults for the content type and make per-node customizations and the underlying Panelizer.module will need to be updated.
- Radix Layouts: The responsive layouts that Panopoly uses are required for all the in-place editing in Drupal 8. Fortunately they have already been ported to Drupal 8 and just need to be bundled with the Panopoly 2.x release.
- Panopoly Widgets: The ability to add individual widgets will depend a bit on external modules (like GMap Field and Table Field) upgrading to Drupal 8 themselves, but most of the widget functionality will already be available via Drupal core.
Beyond the Panels in-place editing, there are a number of secondary features (such as media integration, spotlight functionality, demo content, etc) that will also need to be upgraded once Drupal community consensus is reached on the right way to do this in Drupal 8. Our goal with Panopoly 2.x is not for 100% feature parity out of the box, but an iterative release process where we add functionality as appropriate. As with most open source developing, the timing of the releases of Panopoly 2.x will depend on the larger community, but with the thriving ecosystem of developers who regularily work with and extend Panopoly heres to hoping for something great. To follow along with our progress, watch this space: https://www.drupal.org/project/panopoly.