An overview of Drupal 8 front-end component integration methods
Since the release of Drupal 8, great strides have been made to develop a component-based theming workflow that takes advantage of the best that Twig has to offer and also plays nice with component libraries and design systems. Gone are the days of redundant styles and markup, making way for the efficiencies found when Drupal and tools like Pattern Lab or Storybook can share the exact same code. That said, handling the mapping of data between Drupal and your component library can still be quite complicated and difficult to coordinate on larger cross-functional teams.
This session will provide an overview of methods that can be used to provide data from Drupal to a front-end component that lives outside of the traditional Drupal templates directory, including:
-
Mapping data via preprocessing
-
Mapping data in twig templates
-
Helper modules including Component Libraries, Twig Tweak, and Twig Field Value
-
Popular component-based themes and starter kits
-
-
UI Patterns and related supporting modules
Finally, we’ll look ahead to how this process could evolve beyond Drupal 8.
Learning Objectives
At the end of this session, attendees will be able to:
-
Develop a solution to map data from Drupal to components that live outside of the templates directory.
-
Recognize the potential challenges related to front-end component integration in Drupal 8.
-
Identify the component integration approach that works best for their team or project.
Target Audience
This session is for front-end developers who have experimented with component based theming in Drupal 8 and have been looking to streamline the process. It is also for front-end developers who haven’t yet adopted this approach and have wondered how it might impact their workflow.
Prerequisites
Attendees will get the most out of this session if they have been previously been introduced to the basics of component based theming concepts in Drupal 8.
Track
Experience Level
When & Where
If no timezone is set on your profile, time is displayed in UTC.
Update your profile's timezone