It only took me about 10 minutes to fill out, and it's an easy contribution to the Drupal community with a big impact. Fill it out, then come back, and read the rest of this post. (I'll wait.)
What is the decoupled menus initiative?
The goal of the decoupled menus initiative is to:
This includes creating official, community-supported components (e.g. React & Vue) that you can use in your own project or as a reference implementation--and everything required to support it including docs, packaging, security, etc. And at the same time keeping the scope small and attainable by saying we'll ship a single menu component rather than a complete overhaul of Drupal's admin UI.
Credit: Dries Buytaert, DrupalCon Europe 2020
While on the surface this might sound like we're building a React component that displays links, I think it's the work that needs to happen to ensure that component can be effectively managed and maintained by the Drupal community that is the real value of this initiative. Some of the problems that need to be solved include:
- Defining tooling, and processes, for creating best-in-class documentation for how to consume menu data from Drupal
- Developing an ideal data structure for consuming menu data, and then updating to Drupal core to facilitate providing that data
- Allowing content creators to configure, and turn on/off, menus served via JSON:API through an intuitive UI
- And of course writing the code for the different reference implementations in React, Vue, etc.
Think of the decoupled menus initiative as laying the groundwork for future innovations.
Assuming this initiative is successful, I would love to see something similar for dealing with authentication: a set of community supported components that deal with the complex OAuth workflow, specifically designed to integrate with Drupal and the Simple OAuth module. This would get us closer to the experience of using solutions like Auth0.
Want to know more? Or get involved?
Did I mention there's a survey?
- This video by Gabe Sullice (who is also one of the initiative leads) is a great 7 minute explanation of the problem they're trying to address, and why.
- Official landing page for the initiative, but it's kind of blank right now so just go to the project page and check the issue queue.
- Join the #decoupled-menus-initiative channel in Slack (drupal.org/slack).
- JS Menu Component Initiative Questions this captures some of the initial thinking about general architecture and scope from a more technical perspective.
- The DMI: Technical Roadmap document lays out near-term goals(as of Jan. 27th, 2021), and plans