Talking Drupal
Talking Drupal is a weekly chat about web design and development by a group a guys with one thing in common, we love Drupal. With hosts Stephen Cross, John Picozzi and Nic Laflin.

Today we are talking about The Recipes Initiative, the future of install profiles, if distros are still a thing, and answering a bunch of listener questions with our guest Jim Birch. We’ll also cover Quick Links Kit as our module of the week.

For show notes visit:
www.talkingDrupal.com/417

Topics

  • What are recipes
  • How do you use recipes
  • Is it a module, configuration or something else
  • How do recipes compare to install profiles
  • Are you stuck with them
  • What happens if the config is changed
  • Are there namespace collisions
  • How do recipes compare with Distributions
  • Can you include content
  • Listener James: Can recipes uninstall modules
  • Can we use recipes now
  • When will recipes be in core
  • Can recipes be used by tests
  • Listener Andy: Can recipes and startkits interact
  • Can themes require recipes
  • Listener Matthieu: How do recipes compare with Symfony recipes
  • Listener James: How easy will it be to make custom recipes
  • Listener Matthieu: Should contrib maintainers be watching recipes
  • How can we get involved

Resources

Guests

Jim Birch - @jimbirch

Hosts

Nic Laflin - nLighteneddevelopment.com nicxvan
John Picozzi - epam.com johnpicozzi
Jen Lampton - jenlampton.com - jenlampton

MOTW

Correspondent

Martin Anderson-Clutz - @mandclu

Quick Links Kit

  • Brief description:
    • Have you ever needed to add a set of quick links, essentially visual navigation prompts, to the home page or section pages of your Drupal site?
    • Quick Links Kit (different from Quicklink module created by last week’s guest, Mike Herschel)
  • Brief history
    • How old: I created in Apr 2021
  • Versions available:
    • 1.0.6 that supports Drupal 8, 9, and 10, and 2.0.1 that supports only D10
  • Maintainership
    • Sporadically maintained, but a pretty simple module
  • Number of open issues:
    • 1, and it’s not a bug
  • Usage stats:
    • 1 site
  • Maintainer(s):
    • Me!
  • Module features and usage
    • The module is really just a set of configuration, with an optional submodule that sets everything up, including the placement of the block on the home page, for sites using Olivero as their theme, so it’s perfect for a fresh install of Drupal
    • It allows for SVG icons to be set for each link, and sets their fill to inherit from the link style
    • The links can be created and managed without leaving the page on which they’re used, by using the settings tray, though it would be a quick configuration change to use a modal or a separate page instead, if preferred.
    • The 2.0 version also makes use of Drupal 10’s new responsive grid views display, so if you’ve wanting to try that out, this is an easy way to get started
    • I thought this module was appropriate for today’s episode because it’s an example of a module that will be a recipe once the infrastructure for them is ready. That said, the Olivero submodule does currently contain a little CSS to improve the display of the links, but that could easily be copied into your site’s custom theme.
Direct download: td-417-libsyn.mp3
Category:general -- posted at: 2:00pm EST

On today’s show we are talking about Single Directory Components in Drupal, How they differ from Web Components, and what are their benefits with guest Mateu Bosch & Mike Herchel. We’ll also cover Component Libraries: Theme Server as our module of the week.

For show notes visit:
www.talkingDrupal.com/416

Topics

  • What are Single Directory Components?
  • Where did the idea of adding Single Directory Components to Drupal come from?
  • Where does support for this stand in Drupal Core? Fully supported? Still need a contrib module?
  • How do they differ from Web Components? (Mike will take this one)
  • How does Single Directory Components make Drupal Theme development easier?
  • What is the point of creating a schema for an SDC?
  • Can modules or themes override SDCs? How?
  • Can SDC be integrated into component library systems like Storybook? How?
  • Any other helpful contrib modules that enhance SDCs?
  • Does this at all help a headless?
  • How can someone get involved or help contribute to Single Directory Components?

Resources

Single Directory Components
https://www.drupal.org/project/sdc
JSON Schema
https://json-schema.org/
SDC Display
https://www.drupal.org/project/sdc_display
SDC Styleguide
https://www.drupal.org/project/sdc_styleguide
Cl Devel
https://www.drupal.org/project/cl_devel
CL Server
https://www.drupal.org/project/cl_server
CL Generator
https://www.drupal.org/project/cl_generator
SDC Documentation
https://www.drupal.org/project/drupal/issues/3345922
Mike’s blog
https://herchel.com/
SDC Slack Channel (Components channel in Drupal Slack)
#components
https://drupal.slack.com/archives/C4EDNHFGS
Drupal Board Elections
https://www.drupal.org/association/board/elections

Guests

Mike Herchel - herchel.com @mikeherchel
Mateu Bosch - mateuaguilo.com

Hosts

Nic Laflin - nLighteneddevelopment.com nicxvan
John Picozzi - epam.com johnpicozzi
Andy Blum - andy-blum.com - andy_blum

Module of the Week

with Martin Anderson-Clutz - @mandclu

Component Libraries: Theme Server

This module lets you use component libraries, like Storybook, in your Drupal project, without Twig.js!

Direct download: td416.mp3
Category:general -- posted at: 2:06pm EST

Today we are talking about Front End Performance, Common Front End Issues, and Ways to test and fix said issues with guest Andy Blum. We’ll also cover Webp Fallback Image as our module of the week.

For show notes visit:
www.talkingDrupal.com/415

Topics

  • How do we break down front end performance
  • How do we measure front end performance
  • What are web vitals
    • Standard, objective measurements
    • First/Largest contentful paint
    • Cumulative layout shift
    • Time to Interactive/First Input Delay/Time To Next Paint/Total Blocking Time
  • What are some common client side performance problems
    • “Flickering”
    • “Slow loading”
    • Image size/resolution issues
    • Render-blocking resources
    • Screen jitters
    • Memory leaks
    • Memory Bloat
  • How do tracking scripts affect performance
  • Tools to help identify and resolve
  • Drupal front end performance

Resources

Hosts

Nic Laflin - nLighteneddevelopment.com nicxvan
John Picozzi - epam.com johnpicozzi
Andy Blum - andy-blum.com - andy_blum

MOTW

Correspondent

Martin Anderson-Clutz - @mandclu
WebP fallback image

  • Brief description:
    • Do you want your Drupal site to generate WebP images in the most optimal way? There are a number of modules for that, today we’re going to talk about…
  • Brief history
    • How old: created in Jun 2022 by pedrop
    • Versions available: 1.0.0 and 1.1.0 versions available, both of which support Drupal 8, 9, and 10
  • Maintainership
    • Actively maintained
  • Number of open issues
    • 3, 2 of which are bugs
  • Has test coverage
  • Usage stats:
    • Almost 252 sites
  • Maintainer(s):
    • Most recent release is by dj1999
  • Module features and usage
    • Anyone using testing tools like Lighthouse will have seen suggestions to use modern image formats like WebP, and with good reason. They allow for much smaller image files at the same quality, which means a better user experience and less bandwidth used by both the server and the visitor. WebP is a natural choice because it enjoys over 95% browser support, but many sites still care about that other 5%
    • Drupal core added its own support for webp in 9.2, but without a fallback image, so browsers that don’t have WebP support have been out of luck
    • Contrib modules have allowed for generating a webp image and a jpeg fallback, to allow for universal support. Typically they have worked by creating the WebP variant from the output of a core image style, so after an image has been saved as something like a jpeg. That means the resulting WebP can’t compress as well, and can show compression artifacts
    • WebP Fallback Image is different because it allows Drupal core to generate the WebP image from the source file, and then creates the jpeg fallback.
    • Also worth noting that this module only creates the jpeg fallback when it’s requested, so it doesn’t add to the storage of your website unless it’s needed
Direct download: td-415-libsyn.mp3
Category:general -- posted at: 2:00pm EST

Today we are talking about The Future of Content Management, What we see for Drupal in the future, and How AI might factor in with guest John Doyle. We’ll also cover Access Policy as our module of the week.

For show notes visit:
www.talkingDrupal.com/414

Topics

  • Digital Polygon
  • Content Management can mean many things, what is our definition
  • What factors contribute to the changes moving to a more centralized model
  • How do organizations manage content for different channels
  • Where do design systems collide with content management
  • Why is Drupal a good fit
  • How does headless fit in
  • Maintaining content architecture long term
  • Drupal adaptations over the next 5 years

Resources

  • Talking Drupal #409 - Data Lakes
  • Hey everyone! Our friends at the Linux Foundation are offering Talking Drupal Listeners 25% off on any e-learning course, certification exam or bundle. Good from August 22-Sept 30, 2023. With discount code LFDrupal25 Please note Bootcamps, ILTs and FinOps courses are excluded… Again that code is LFDrupal25 and you can use that at https://training.linuxfoundation.org/ Thank you to the linux foundation!
  • Flexible Permissions

Guests

John Doyle - digitalpolygon.com _doyle_

Hosts

Nic Laflin - nLighteneddevelopment.com nicxvan
John Picozzi - epam.com johnpicozzi
Andy Blum - andy-blum.com - andy_blum

MOTW

Correspondent

Martin Anderson-Clutz - @mandclu
Access Policy

  • Brief description:
    • Does your Drupal site need a flexible way to manage access to content? There’s a module for that!
  • Brief history
    • How old: created in Nov 2022
    • Versions available: 1.0.0-beta1, works with D9 and 10
  • Maintainership
    • Actively maintained, most recent release was in the past week
  • Number of open issues:
    • 4, none of which are bugs
  • Test coverage
  • Usage stats:
    • 12 sites
  • Maintainer(s):
    • partdigital
  • Module features and usage
    • Allows a site builder to define different policies that can be used to manage content access or editing capabilities based on various factors, all within the Drupal UI
    • Criteria can include field values of the content, field values on the current user’s profile, the time of day, and more
    • The policy can restrict access, for example view acces to only selected people or people with a certain role or field value on their profile. I
    • Once defined, policies can be assigned manually, or automatically applied based on configurable selection criteria
    • The project page describes this as an Attribute Based Access Control (ABAC) architecture, which complements Drupal core’s Role Based Access Control that our listeners are probably familiar with
    • I used it for the first recently, and found that given the power and flexibility the module provides, it’s great that it has in-depth documentation
    • I filed a couple of issues (technically half of the open issues) and partdigital was very responsive
    • The module does also provide an API for defining your own policy type, access rules, rule widgets, and more. So if you need a setup even more custom that what Access Policy can provide out of the box, it’s likely you can extend it to meet your individual use case
Direct download: td-414-libsyn.mp3
Category:general -- posted at: 2:00pm EST