Plone 5

by Sally Kleinfeldt published 2020/08/21 20:32:00 GMT+0, last modified 2020-08-21T20:35:20+00:00
Plone's current version lays the groundwork for the web of the future

Plone Icon LogoPython 3

Plone 5 saw numerous improvements including a new theme, new API, and more modern front-end tooling. It also marked a turning point when the Dexterity content type framework and Diazo theming engine became Plone's default feature set, and older technologies such as the Archetypes content type framework became optional. Reducing the legacy code included in Plone core facilitated the challenging task of porting Plone to Python 3, which was necessitated by Python 2's looming end of life in 2020. The Plone community launched an enormous porting project, which included not only Plone, but also Zope, the Python web framework Plone was built on top of.

The porting project was the focus of many sprints, and in 2019 the community declared victory with the release of Plone 5.2.

Mosaic

Dexterity and Diazo were part of the long-term vision of Plone's co-founder Alex Limi, distilled in the three Ds: Diazo, Dexterity and Deco. The third part of Alex's vision, Deco, was a block and tile-based page layout engine.

The Plone 4 and 5 eras saw lots of Deco experimentation, with various community members creating add-ons that tried different approaches. Eventually the community coalesced around Mosaic, which lets editors create tiled layouts by using the Mosaic editor to insert different types of tiles and easily build custom composite pages on the fly.

Into the Future

Mosaic was not the end of experimentation in Plone. As Plone 5 gained adoption, the community continued to push forward and lay the groundwork for Plone to maintain citizenship in the modern web. Work accelerated on a full-featured REST API, available as an add-on beginning in Plone 4.3 and released as part of core in Plone 5.2. The REST API enables Plone's back end to operate as a headless CMS which can power a variety of JavaScript front ends. Angular, React, and Gatsby front ends have already been developed.

Over the last few years community energy has been building around Volto, which is gaining acceptance as the standard-bearer user interface for a headless Plone IO installation. Volto implements all the features of the Plone REST API, making it a full featured content management system written in React. It combines the best of both worlds - the speed and ease of development of a dynamic React front end with the security, full feature set, and customizability of the Plone back end.

Try It!

You can try Plone at a variety of demo sites or you can launch a Docker image, deploy to Heroku, or download and install it yourself.