Over the last two years our community has seen the rise of countless solutions to implement design systems and components within Drupal. During the same period across camps, cons and the internet at large Adam and Brian have been having an ongoing conversation about best practices in component based development.
With Brian focusing on ease of component integration (often with the help of contributed modules), and Adam focusing on a platform agnostic approach favoring functionality in Drupal core, there was initially quite a bit of good natured debate. But as time went on and approaches in the community matured they found their perspectives aligning more and more.
This session will present their (mostly) shared vision of a set of best practices for component based development. They’ll still disagree on some stuff, but that’s part of the fun. We’ll review:
- An overview of current approaches in the community, along with some limitations.
- Our goals for a component based design system.
- Breaking down your patterns using atomic design principles to represent the ideal state of design system components.
- Managing your pattern library as an external dependency of your Drupal project.
- Limiting processing in your pattern library, and handling processing and mapping within your CMS.
- Common misconceptions about integrating design system patterns in Drupal.
- A baseline approach to implementation in Drupal using Drupal core and limited contributed modules.
- The role of popular component-friendly contributed modules
- Emerging technology for the future of component based development.
Finally, we’ll go hands on with a brief demo showing our preferred approach in action.