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 7 Long Term Support, common security tips, and support services you can use with guests Greg Knaddison, Aaron Frost, and Dave Welch . We’ll also cover Storybook as our module of the week.

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

Topics

  • Drupal 7 EoL
  • Drupal will not stop working
  • Security team perspective
  • Security concerns
  • Extened Community Support
  • Long Term support
  • HeroDevs
  • Never ending support (NES)
    • PHP
    • Hosting
    • Security
    • Contrib
  • Product advisor
  • Colorado Digital Service

Resources

Guests

Greg Knaddison - morrisanimalfoundation.org greggles
Aaron Frost - herodevs.com aaronfrost
Dave Welch - herodevs.com dwelch2344

Hosts

Nic Laflin - nLighteneddevelopment.com nicxvan
John Picozzi - epam.com johnpicozzi
Ivan Stegic - ten7.com ivanstegic

MOTW

Correspondent

Mark Casias - markie

  • Module name/project name:
  • Brief description:
    • The storybook module makes it easier to create a connection between Drupal and Storybook. It adds some Twig functionality so you can write Stories in Twig as opposed to YML or JSON or React
  • Brief history
    • How old: Less than a year
    • Versions available: Alpha4 came out earlier this month
  • Maintainership
    • Actively maintained: Yes
    • Number of open issues: 6
    • Test coverage: no
  • Usage stats:
    • N/A: for development only
    • Maintainer(s):
    • Mateu Aguiló Bosch (e0ipso) from Lullabot.
    • Module features and usage
    • Twig based stories
    • Pulls in Sites theme and base css.
    • So needs some updates to the development.services.yml
    • Also means it is hard to publish a storybook.
    • No need for SDC (but works well with it)
    • Great instructions on the module page
    • Way easier than previous integrations including cl_server.
    • Not as opinionated as previous storybook integrations.
Direct download: td-439-libsyn_v2.mp3
Category:general -- posted at: 2:00pm EDT

Today we are talking about CKEditor 4 End of Life, Moving to CKEditor 5, and what you can expect from CKEditor 5 now and in the future with guest Wim Leers. We’ll also cover CKEditor 5 Premium Features as our module of the week.

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

Topics

  • CKEditor 4 end of life June 2023
  • Issues people might see if they are still on CKE4
  • Why a third party library and not roll our own
  • Are there other alternatives
  • Why did Drupal decide on CKEditor
  • Drupal 10 moved to CKE5 How should people update
  • Upgrade gotchas
  • What's new in CKE5
  • What is on the roadmap regarding Drupal and CKE5
  • Is there going to be a CKE6
  • Native Web Components
  • Does CKE in core affect Gutenberg

Resources

Guests

Wim Leers - wimleers.com Wim Leers

Hosts

Nic Laflin - nLighteneddevelopment.com nicxvan
John Picozzi - epam.com johnpicozzi
Ivan Stegic - ten7.com ivanstegic

MOTW

Correspondent

Martin Anderson-Clutz - mandclu

  • Brief description:
    • Have you ever wanted to offer your content creators advanced capabilities like real-time collaboration? There’s a module for that.
  • Module name/project name:
  • Brief history
    • How old: created in Sep 2022 by Wiktor Walc, although recent releases are by Wojciech (vOYchekh) Kukowski, both of CKSource, the company behind CKEditor (Wiktor was on episode 372 https://talkingdrupal.com/372)
    • Current version available: 1.2.5 which works with Drupal 9 and 10
  • Maintainership
    • Actively maintained, latest release in the past month
    • User Guide available, link is in the README
    • Number of open issues: 16, 8 of which are bugs
  • Usage stats:
    • 159 sites
  • Module features and usage
    • To me, the most compelling features enabled by this module are the ones that turn your Drupal WYSIWYG into a robust collaboration tool, similar to what users may be used to in tools like Google Docs or Office 365
    • Real-time inline comments and changes from multiple users
    • Track changes to suggest ways the content could be improved
    • A history of changes made in the WYSIWYG, independent of the saved Drupal revisions
    • Tag users with @ mentions to have them notified
    • There’s also a Productivity Pack to enhance your WYSIWYG, and again some of these will be familiar to users that also use popular online collaboration tools
    • A document outline that uses heading within your content to make navigation for moving quickly within the document
    • Can generate a linked Table of Contents, which will automatically update as headings are added or changed
    • Slash commands to execute actions
    • Enhanced Paste from Office, to preserve complex incoming content structures, but with clean HTML as the result
    • And more!
    • Another premium feature is the ability to export to Word or PDF, and it can also restore full screen editing, a feature that didn’t make the transition from CKEditor 4 to 5, as part of the open source offering
    • Finally, it also includes an AI Assistant that provides yet another interesting way to empower your content authors to leverage AI tools for their writing, including the ability to change the style, length, or tone of selected content using pre-made prompts, or generate content with custom queries. It also works with a number of different models out of the box, so you’re not restricted to ChatGPT
    • The module is open source but using these premium features does require a subscription. The pricing will depend on the number of active users and which features you need, so if you’d like more information you can use the contact form at ckeditor.com
    • Also worth mentioning here that the team at Palantir has released a YouTube video of an open source collaborative editor that they’re calling Edit Together. It’s based on the ProseMirror rich-text editor framework, and the blog where they announced it mentioned a mid-2024 release, but that was back in Jul 2023 and I haven’t been able to find any updates since then
Direct download: td-438-libsyn.mp3
Category:general -- posted at: 2:00pm EDT

Today we are talking about sending email with Drupal, The Easy Email Module, and Drupal Mail Best Practices with guest Wayne Eaker. We’ll also cover Content Access by Path as our module of the week.

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

Topics

  • Current state of email
  • What happened to swiftmailer
  • Do you still need the mailsystem module
  • Why Symfony Mailer
  • New dependency in core
  • Difference between Symfony Mailer module and the Symfony Mailer Lite module
  • How does the Easy email module make it easier
  • What are the features of Easy Email
  • Why not use PHP mail
  • JMAP
  • Do you have a roadmap
  • How do we communicate the different module options
  • Are you looking for help

Resources

Guests

Wayne Eaker - drupaltutor.com zengenuity

Hosts

Nic Laflin - nLighteneddevelopment.com nicxvan
John Picozzi - epam.com johnpicozzi
Ivan Stegic - ten7.com ivanstegic

MOTW

Correspondent

Martin Anderson-Clutz - mandclu

  • Brief description:
    • Have you ever wanted to grant users access to edit content based on the path alias of the content? There’s a module for that.
  • Module name/project name:
  • Brief history
    • How old: created in the past month by Mark Conroy of Annertech, who is also a core subsystem maintainer for the Umami profile
    • Versions available: a stable 1.0.0, created in the past week, that works with Drupal 10
  • Maintainership
    • Actively maintained
    • Doesn’t have a user guide yet, but the module’s README does include some FAQs, and the project page includes a link to a YouTube video that demonstrates how to install and use the module
    • Number of open issues: 2, one of which is a bug
  • Usage stats:
    • 2 sites
  • Module features and usage
    • When installed, the module adds a new taxonomy vocabulary to your site. You can add terms to this vocabulary to define sections by path
    • Users on the site will have a new field, where you can reference one or more of the section terms, granting the user access to edit any content with a path that matches the section
    • The module also includes a submodule called Content Access by Path Admin Content. When installed, users who go to the admin/content listing will only see content listed that they can edit, based on either the sections they’ve been assigned, or their ownership of the content.
    • Granting edit permissions to a “section” of the website is a common ask for site owners, so I’m excited that this module makes it easy to set that up. There are solutions in the contrib ecosystem based on taxonomy for access control, and back in episode #414 we talked about Access Policy as a very flexible way to grant edit permissions, but in my mind those all require more set-up, and may require an extra step during content creation to make sure the right access is available. Content Access by Path, along with something like the near-ubiquitous Pathauto, can make it pretty painless to set up and use section-specific edit permissions
Direct download: td-437-libsyn.mp3
Category:general -- posted at: 2:00pm EDT

Today we are talking about AI within Drupal, How AI can help, and Modules to use with guest Martin Anderson-Clutz. We’ll also cover Augmentor AI as our module of the week.

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

Topics

  • Terminology
  • IMF analysis
  • Prompt engineering
  • AI in Drupal
  • Best way to try modules
  • Best use of AI
  • Other ways of integrating

Resources

  • Augmentor AI
  • Open AI
  • Prompt Engineering: Get the Most From Your Drupal Site's AI Integration
  • Terminology
    • NLP - work with text provided in a conversational format, understand the intended meaning, and provide a relevant response
    • AI - A subset of CS that aims to develop systems that can mimic human response, or automating sophisticated behavior
    • ML - subset of AI that aims to act without explicit guidance, by extrapolating from known data
    • Deep learning - a subset of ML which uses artificial neural networks with representational learning to develop and leverage their own means of classification and other feature detection
    • LLM - an AI algorithm that uses Deep Learning techniques to accomplish NLP tasks such as responding to unstructured user prompts. LLMs are trained on massive data sets, often gathered from the internet, but sometimes using more specialized data
    • Typically the AI interfaces our listeners are already using are based on an LLM, but the nature and recency of the data they’ve been trained on can vary widely. Recently Mike Miles created Drupal Droid, a GPT model specifically trained for Drupal developers, and you can find a demo of that in our YouTube channel
  • Mike Miles Drupal Droid
  • AI module list
  • OpenAI Image
  • Search API Pinecone
  • TMGMT Translator OpenAI

Guests

Martin Anderson-Clutz - mandclu

Hosts

Nic Laflin - nLighteneddevelopment.com nicxvan
John Picozzi - epam.com johnpicozzi

MOTW

Correspondent

Martin Anderson-Clutz - mandclu
Augmentor AI

  • Brief description:
    • Have you ever wanted a highly configurable way to integrate multiple AI services with your Drupal site? There’s a module for that.
  • Brief history
    • How old: created in Oct 2022 by murrayw of Morpht, though recent releases are by elonel
    • Versions available: 1.1.2 which works with Drupal 9.5 and 10
  • Maintainership
    • Actively maintained, most recent release was earlier this month
    • Documentation available
    • Number of open issues: 11, 3 of which are bugs
  • Usage stats:
    • 82 sites
  • Module features and usage
    • To use Augmentor AI, you need to define one or more “augmentor” configuration entities. An augmenter entity implements an augmentor type, which determines what AI service it can use, what configuration options it will have available, and so on.
    • The augmentor will define one or more “messages” that provide structure to the prompt that will be passed to the AI model in order to generate a response. It can also be configured in a variety of ways, such as how much randomness to use, a maximum response length, and more.
    • You can expose your augmentor(s) to content creators by adding a CKEditor button, or by adding fields to your site’s entity forms. For each field use can choose the widget to use, and how it should interact with any existing data in the field you want to target.
    • For example, you could have it generate a summary from your body field and have it automatically populate the summary field. Or, you can have it suggest tags, but the specialized widget renders each suggestion as a clickable element that will add the tag to a core tag field.
    • There are currently modules available to integrate Augmentor AI with ChatGPT, Google Cloud Vision, AWS AI, and more.
Direct download: td-436-libsyn.mp3
Category:general -- posted at: 2:00pm EDT