Build update on Wagtail's new page editor
An update on our progress on the page editor redesign and how you can contribute
May 2022 marks the launch of Wagtail 3 with some amazing new features, including updates to the Page Editor. Here's our latest update on where we are with the build and what we expect to happen next.
Page editor changes in Wagtail 3
We kicked off the build work in earnest in February this year, meaning we had just over two months before the release candidates for Wagtail 3 came out. Given the large scope and short deadline, we planned to split the page editor changes across the next two releases.
Our original goals for Wagtail 3 (May 2022) were to:
- Implement the new slim sidebar
- Update the icons, fonts, and button styling
- Change font, icon, and header styles across Wagtail
- Implement the new Header and Tabs
- Implement the new Information side panel
- Update field panels and drop edit handlers, so that the developer experience is simpler
- Introduce the ability to split rich text blocks
- Update the form field and StreamField styling
- Update the StreamField chooser
Unfortunately, we were unable to complete the final two points for Wagtail 3, and those are now expected in Wagtail 4 (August 2022). This was largely due to the refactoring required in the first two points (sidebar and SVGS) taking longer than we’d anticipated. Although the new and old design styles are having to live together on the page editor, it’s still significant progress.
Page editor changes in Wagtail 4
As we’ve already said, the reason we’re able to tackle such a large amount of work in such a short space of time is due to sponsorship from corporations that use Wagtail - a large proportion of which is from Google. At this point, we’re around two-thirds of the way through the existing budget. But without further funding, we won’t be able to complete the features we hoped to. We’re having to look closely at the remaining scope and how we can plan sensibly as we move forward.
Here is a run down of the remaining big ticket items and how we see them being delivered:
Expected to be in Wagtail 4 as part of this project
- Autosave / Extra-large effort
- Live preview / Large effort
- Generic chooser / Extra-large effort
We see all of these items as key high value items for the page editor, and these are items that are unlikely to be successfully delivered by community contributions in the short term.
However, we have a funding shortfall and are actively seeking corporate sponsorship so we can deliver these items in Wagtail 4. If you can be a sponsor or have any sponsorship ideas, please contact Meagen Voss via slack or at [email protected]. Here's an article on why you should pay for open source if you need some ideas for speaking with business leaders.
Good opportunities for third-party contributions
There are several things we’d like to have in the page editor (and that the community members have expressed strong interest in) but that we don’t think make sense for us to take on as part of this project. This is either because we think these items are good candidates to be tackled by a third party or individuals in the community.
- Minimap / Large effort
- Frontend accessibility checker (Sa11y - an inbuilt way for editors to check the accessibility of the webpage that is being output) / Medium effort
The Minimap is a standalone piece of work that involves fresh code without refactoring. It will interact with the new field panels work that was in Wagtail 3. The accessibility checker is a simpler piece of work than it sounds. Sa11y has been chosen as our preferred tool for this, and implementing it should be about determining the best way to make it available to editors.
We are interested in anyone who would like to consider taking this work on, and we would provide product design and technical guidance as well as the required code review to get it into production. If you're a developer or agency who can help with this, please let Meagen Voss know via slack or [email protected].
Additional sponsorship opportunities
There is some scope that won’t fit into the budget as it stands but also feels tricky for a third-party to pick up at this point in time. These items include:
- Allowing Rich Text features for single-line input fields (allowing things like bold and italics on single line fields).
- Using Draftail for all plain-text fields (allowing things like comments on bits of text rather than the entire field)
- Toast notifications (pop-up notifications that disappear, or persist)
The first two of these items are quite involved and would be best done alongside or after the other work we’re doing on fields in the near future. The Toast notifications require rehashing and updating old code as well as a significant knowledge of where and how notifications are used across Wagtail.
We are interested in anyone who might consider sponsorship for this work; either organisations that specifically want to see these features or that want to help push Wagtail forward. If you are interested in this, please reach out to Meagen Voss either via slack or through [email protected].