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 Drupal Contribution, how you can approach it within your company, and why a Contrib First approach is important with guest Steve Wirt. We’ll also cover Config Importer & Tools as our module of the week.

For show notes visit:
https://www.talkingDrupal.com/490

Topics

  • What is contrib first
  • How does this help the Drupal community
  • Why is it a good idea for companies
  • How do you explain this to non dev folks like CEOs or Presidents
  • What do you say if a client does not buy in
  • How do you monitor and build confidence in other developers
  • How can someone get started
  • Any tools or tips for someone trying to bootstrap this

Resources

Guests

Steve Wirt - civicactions.com swirt

Hosts

Nic Laflin - nLighteneddevelopment.com nicxvan
John Picozzi - epam.com johnpicozzi
Avi Schwab - froboy.org froboy

MOTW

Correspondent

Avi Schwab - froboy.org froboy

  • Brief description:
    • Have you ever wanted to streamline the management of config changes during your Drupal project deployment - importing individual configuration changes from contrib or custom modules and synchronizing settings across different environments? There’s a module for that.
  • Module name/project name:
  • Brief history
    • How old: created in April 2016 by Andrii Podanenko(podarok)
    • Versions available: 3.2.0 version which works with Drupal 9 and 10, D11 fixes are in the queue.
  • Maintainership
    • Actively maintained - although it’s a developer module that’s been mostly stable, so there have not been many recent changes.
    • Security coverage
    • Test coverage - unit tests
    • Documentation - video documenting the process on the module page and instructions in the project overview
    • Number of open issues: 8 open issues, 3 of which are bugs against the current branch
  • Usage stats:
    • 300 sites
  • Maintainer(s):
    • 7 maintainers across a few different agencies in Ukraine
  • Module features and usage
    • This module has no UI, and all of its work is done using it’s config_import services, either importer or param_updater
    • The importer service imports full config files
    • The param_updater service pulls in single parameters from a config file.
    • Both can be used in .install files of contrib modules or on your own site to pull in configuration during database updates, which can be helpful for adding a new feature, modifying existing features, or pushing changes to many sites.
    • There is also a “spiritual successor” to the Confi module called “Upgrade Tool” which has similar functionality with some extra functionality too. https://www.drupal.org/project/upgrade_tool
Direct download: td-490-libsyn.mp3
Category:general -- posted at: 2:00pm EDT

Today we are talking about The IXP Fellowship Initiative, Workplace Developer Training, and making Drupal better for the little guy with guests Carlos Ospina & Mike Anello. We’ll also cover Cloudflare Turnstile as our module of the week.

For show notes visit:
https://www.talkingDrupal.com/489

Topics

  • What is the IXP initiative
  • Why does the community think this is important
  • What is the current status
  • What changed in the last 10 years
  • How do we encourage businesses to do this
  • How can people get involved

Resources

Guests

Carlos Ospina - adrupalcouple.us camoa
Mike Anello - drupaleasy.com ultimike

Hosts

Nic Laflin - nLighteneddevelopment.com nicxvan
John Picozzi - epam.com johnpicozzi
Avi Schwab - froboy.org froboy

MOTW

Correspondent

Martin Anderson-Clutz - mandclu.com mandclu

  • Brief description:
    • Have you ever wanted to use Cloudflare’s Turnstile web service to secure Drupal web forms, as an alternative to more intrusive CAPTCHA widgets that force users to select squares that contain traffic lights, cars, or bicycles? There’s a module for that.
  • Module name/project name:
  • Brief history
    • How old: created in Sep 2022 by Adam Weiss (greatmatter)
    • Versions available: 1.1.13 which works with Drupal 9.4, 10, and 11
  • Maintainership
    • Actively maintained
    • Security coverage
    • Number of open issues: 6 open issues, 3 of which are bugs, with 2 of them postponed
  • Usage stats:
    • 3,981 sites
  • Module features and usage
    • Anyone who maintains a Drupal site is well acquainted with the need to mitigate form spam submissions. Best practices around which tool to use are an ever-changing conversation.
    • Recently Google announced that reCAPTCHA implementations will need to be associated with a Google Cloud account, and will need to enable payment for anything that exceeds the free allowance of 10,000 assessments per month
    • reCAPTCHA v2 widgets are notorious for the challenges they can present to actual users, particularly image challenges. In addition, a 2023 UC Irvine study concluded that “the true purpose of reCAPTCHAv2 is as a tracking cookie farm for profit masquerading as a security service”, so it’s definitely worth considering other solutions
    • Cloudflare developed turnstile as a CAPTCHA alternative, designed to provide security while minimizing the friction for actual users. More importantly, Turnstile never harvests data for ad retargeting.
    • A free Turnstile account can create up to 10 widgets, with unlimited usage.
    • The turnstile module plugs into the existing Drupal CAPTCHA ecosystem, so it can be an easy swap out for anywhere you’re currently using CAPTCHA widgets.
Direct download: td-489-libsyn.mp3
Category:general -- posted at: 2:00pm EDT

Today we are talking about The open university initiative, Drupal in academia, and Fostering Drupal Education with guest Jean-Paul Vosmeer. We’ll also cover Artisan as our module of the week.

For show notes visit:
https://www.talkingDrupal.com/488

Topics

  • What is the Drupal Open University Initiative
  • How did this initiative start
  • Why is it important to get Drupal into Universities and Classrooms
  • What stage is the initiative at
  • Is Drupal currently in any universities
  • Is it better to approach schools or professors directly
  • How is the curriculum being developed
  • What are the main differences between this initiative and resources like Drupalize.me, Drupal at your fingertips, or Drupal TB
  • What is next on the roadmap
  • Where does Drupal CMS fit in
  • Where does the initiative need help
  • How can someone get involved

Resources

Guests

Jean-Paul Vosmeer - reactonline.nl jpvos

Hosts

Nic Laflin - nLighteneddevelopment.com nicxvan
John Picozzi - epam.com johnpicozzi
Avi Schwab - froboy.org froboy

MOTW

Correspondent

Martin Anderson-Clutz - mandclu.com mandclu

  • Brief description:
    • Have you ever wanted to use the Drupal UI to configure numerous aspects of your Drupal site’s look and feel? There’s a theme for that.
  • Module name/project name:
  • Brief history
    • How old: created in Sep 2024 by alejandro cabarcos though recent releases are by crzdev, both of metadrop
    • Versions available: 1.3.8, which support Drupal 10 and 11
  • Maintainership
    • Actively maintained, release in the last week
    • Security coverage
    • Documentation: no, but a lengthy README that includes developer notes
    • Number of open issues: 7 open issues, 5 of which are bugs, but 3 are postponed
  • Usage stats:
    • 170 sites
  • Module features and usage
    • After installing the theme, there is a drush command to generate a subtheme, or you can manually duplicate an included starterkit. You also need to run a couple of npm commands to pull in all the front end libraries, and build the CSS files
    • Once you set the subtheme as your site default, you can customize a variety of ways the site looks, including the fonts and weights to use for heading and default text, the colour and padding of various elements, border weights, border radius, and more.
    • The customizations are grouped into tabs. The base tab includes a colour palette, base font, and link styling. Additional tabs include page layout, header, responsive, and footer, also breadcrumb, headings, display headings, buttons, forms, and components
    • Artisan also provides a toggle to expose extra customization options for dark mode, so if you want your site to give users the option to switch back and forth between normal and dark, this is extremely powerful, but does make for some very long configuration pages
    • You can create and save presets, for easy creation of reusable palettes
    • There is also a companion Artisan Styleguide module that provides a page that previews the theme style applied to an extensive list of elements
    • Last year I was considering making a more configurable subtheme of Olivero for the Event Platform initiative, so I was excited to read about Artisan in a metadrop blog post we’ll include in the show notes
Direct download: td-488-libsyn.mp3
Category:general -- posted at: 2:00pm EDT

Today we are talking about Single Directory Components, How best to work with them, and their future with Drupal with guest Brian Perry. We’ll also cover Embedded Content as our module of the week.

For show notes visit:
https://www.talkingDrupal.com/487

Topics

  • What are Single Directory Components (SDC)
  • Why the switch to SDCs
  • What is there in common between decoupled and SDCs
  • Can you give us an overview of your workflow
  • Common pitfalls
  • How should someone get started working with SDCs
  • Does it work with Paragraphs and Blocks?
  • Does it need to be all at once
  • How do you think SDCs will evolve
  • Do you see this leading to more Decoupled front ends
  • What contrib modules make working with SDCs easier

Resources

Guests

Brian Perry - brianperry.dev brianperry

Hosts

Nic Laflin - nLighteneddevelopment.com nicxvan
John Picozzi - epam.com johnpicozzi
Scott Weston - scott-weston

MOTW

Correspondent

Jacob Rockowitz - jrockowitz.com jrockowitz

  • Embedded Content
  • Brief description:
    • The Embedded Content module allows site builders to select, create, and update content embedded within HTML inside CKEditor.
    • For developers, the EmbeddedContent plugin is like a Block plugin without context.
    • There is a demo on YouTube https://www.youtube.com/watch?v=GxOn-P3Q5Gg
    • There is support embedding of single directory component in progress. Conceptually, this is already possible, the same way one would render a single directory component in Block plugin.
  • Brief history
    • The concept and code started as the CKEditor5 Embedded Content module, created in August 2022.
    • In October 2023, CKEditor5 Embedded Content was renamed to Embedded Content.
  • Versions available:
    • 2.0.3 - January 22nd, 2025
    • Works with Drupal: ^9 ^10 ^11
  • Maintainership
    • Actively maintained? yes
    • Security coverage? Yes
    • Test coverage? Yes
    • Documentation? Video and an example module
  • Number of open issues:
    • All issues: 6 open, 17 total
    • Bug report: 6 open, 15 total
  • Usage stats:
    • 509 sites report using this module
    • 1,263 sites report using this module (using old version)
  • Maintainer(s):
  • Module features and usage
    • Insert themed content in Ckeditor5 using Drupal plugins without having to write rich HTML and CSS
    • Render these results directly in the CKEditor
    • Create 'inline' embedded content that sits inline with the text, like footnotes.
    • Provides
    • Embedded Content plugin
    • CKeditor 5 plugin.
    • Ecosystem
    • Embedded Content: Examples for examples of how to build your own plugins.
    • Embedded Content: Entity for embedding content entities
    • Embedded Content: SDC for single directory components (under development)
    • Potential Challenges
    • Example of the embedded content tag.
    • <embedded-content data-plugin-config="{"text":"Some quote","spoken_by_character":"Some one","align":"center"}" data-plugin-id="schemadotorg_quotation" data-button-id="default"> </embedded-content>
    • Translations via TMS (data is serialized via an attribute)
Direct download: td-487-libsyn.mp3
Category:general -- posted at: 2:00pm EDT