PLAY PODCASTS
Talking Drupal

Talking Drupal

576 episodes — Page 3 of 12

Talking Drupal #470 - Creating Recipes

Today we are talking about Creating Recipes, What Recipes already exist, and helpful tips and tricks with guest Jim Birch. We'll also cover Features as our module of the week. For show notes visit: https://www.talkingDrupal.com/470 Topics What are recipes How do you recommend someone get started writing recipes Where can people find recipes Can you include sub recipes How should you test recipes Any tools that make writing recipes easier What recipes are needed that do not exist How can people move recipes forward Resources Recipe Author Guide Drupal Core Recipes Preconditions for recipes Drupal Recipes Cookbook Recipes Packagist Recipe type Phase 2 roadmap Umami profile recipes Minimal profile recipes Guests Jim Birch - linkedin.com/in/jimbirch thejimbirch Hosts Nic Laflin - nLighteneddevelopment.com nicxvan John Picozzi - epam.com johnpicozzi Aubrey Sambor - star-shaped.org starshaped MOTW Correspondent Martin Anderson-Clutz - mandclu.com mandclu Brief description: Have you ever wanted an admin UI to manage sets of configuration, to version and share across Drupal sites? There's a module for that. Module name/project name: Features Brief history How old: created in Mar 2009 by yhahn, though recent releases are by Dave Reid Versions available: 7.x-2.15 and 8.x-3.14, the latter of which works with Drupal 9.4 and 10 Maintainership Minimally maintained Security coverage Test coverage Documentation: Has a documentation guide and probably hundreds if not thousands of of tutorials available Number of open issues: 610 open issues, 54 of which are bugs against the 8.x branch Usage stats: Almost 117,000 sites, though the majority are using the D7 version Module features and usage Many listeners will remember Features as the de facto solution for configuration management in Drupal 7 and earlier As the name implies, it was really intended to share common capabilities across different Drupal sites Unlike recipes, Features can have version numbers, because there is a path to sync configuration updates across sites using a Feature, though this is where a lot of teams found Features could be complex to use We did previously cover Features as MOTW all the way back in episode #147, but I thought it was relevant to today's discussion because of the way it provides a UI for organizing and exporting specific sets of configuration There is an open issue for Features to directly export recipes, because it already does a lot of the time-consuming work of collecting together necessary config files, including dependencies Even its current state, it could be a time saver for anyone wanting to start creating their own recipes

Oct 7, 20241h 22m

Talking Drupal #469 - Drupal's Popularity & Dev Experience

Today we are talking about Drupal's Popularity & Dev Experience, what could be better, and things that are great with guest Nathan Dentzau. We'll also cover Spam Master as our module of the week. For show notes visit: https://www.talkingDrupal.com/469 Topics Drupal's popularity What can Drupal to enhance popularity and enhance dev experience What is missing in Drupal What could use improvement in Drupal What about recent tooling improvements Drupal CMS (Starshot) Resources New drupal Drupal at your fingertips Laravel Next.js Document using DDEV as the recommended Drupal local development environment Just say drupal Hosts Nic Laflin - nLighteneddevelopment.com nicxvan John Picozzi - epam.com johnpicozzi Nate Dentzau - dentzau.com nathandentzau MOTW Correspondent Martin Anderson-Clutz - mandclu.com mandclu Brief description: Have you ever wanted to defend your Drupal website from webform spam using a constantly updating list of known bad actors? There's a module for that. Module name/project name: Spam Master Brief history How old: created in Mar 2018 by Pedro Alves (pedro-alves) Versions available: 8.x-1.99 and 8.x-2.50, the latter of which support Drupal versions 8 through 11 Maintainership Actively maintained Security coverage Documentation on SpamMaster.org Number of open issues: no open issues Usage stats: 449 sites Module features and usage Spam Master is a website protection technology that was originally created back in 2012, and is used across sites based on a variety of technologies, including Wordpress, Drupal, Joomla, and more It uses a variety of techniques to identify and block malicious actors, including "real-time block lists", honeypot traps, comment analysis, and more By maintaining a list of known bad actors, tracked by IP address and email addresses used, you can also benefit from a "network effect" by being able to identify them based on malicious behavior on any of the thousands of sites using Spam Master The module claims compatibility with a variety of forms, including registration, comments, commerce, and more It includes a variety of reports you can use to understand the amount of spam your site is receiving, and the module can automatically send you an email if it believes your site has reached "Level 3" of spam targeting Spam Master does use licenses on SpamMaster.org, but free licenses are available

Sep 30, 20241h 23m

Talking Drupal #468 - Drupal AI

Today we are talking about Artificial Intelligence (AI), How to integrate it with Drupal, and What the future might look like with guest Jamie Abrahams. We'll also cover AI SEO Analyzer as our module of the week. For show notes visit: www.talkingDrupal.com/468 Topics What is AI What is Drupal AI How is it different from other AI modules How do people use AI in Drupal How does Drupal AI make AI easier to integrate in Drupal What is RAG How has Drupal AI evolved from AI Interpolator What does the future of AI look like Resources AI Agents Guests Jamie Abrahams - freelygive.io yautja_cetanu Hosts Nic Laflin - nLighteneddevelopment.com nicxvan John Picozzi - epam.com johnpicozzi Martin Anderson-Clutz - mandclu.com mandclu MOTW Correspondent Martin Anderson-Clutz - mandclu.com mandclu Brief description: Have you ever wanted an AI-based tool to give your Drupal site's editors feedback on the SEO readiness of their content? There's a module for that. Module name/project name: AI SEO Analyzer Brief history How old: created in Aug 2024 by Juhani Väätäjä (j-vee) Versions available: 1.0.0-beta1, which supports Drupal 10.3 and 11 Maintainership Actively maintained Number of open issues: none Usage stats: 2 sites Module features and usage Once you enable this module along with the AI module, you can select the default provider, and optionally modify the default prompt that will be used to generate the report With that done, editors (or anyone with the new "view seo reports" permission) will see an "Analyze SEO" tab on nodes throughout the site. Generated reports are stored in the database, for ongoing reference The reports are also revision-specific, so you could run reports on both a published node and a draft revision There's a separate "create seo reports" permission needed to generate reports. Within the form an editor can modify the default prompt, for example to get suggestions on optimizing for a specific topic, or to add or remove areas from the generated report. By default the report will include areas like topic authority and depth, detailed content analysis, and even technical considerations like mobile responsiveness and accessibility. It's able to do the latter by generating the full HTML markup of the node, and passing that to the AI provider for analysis It feels like it was just yesterday that the AI module had its first release, so I think it's great to see that there are community-created additions like this one already evolving as part of Drupal's AI ecosystem

Sep 24, 20241h 21m

Talking Drupal #467 - Config Actions System

Today we are talking about The Config Actions System, What it does, and how it helps with Drupal Recipes with guests Alex Pott and Adam Globus-Hoenich. We'll also cover the Events recipe as our module of the week. For show notes visit: www.talkingDrupal.com/467 Topics Explain Config Actions Is this related to the Actions UI How are config actions used in Drupal How will the average user interact with Config Actions What does non-desctructive mean Where did the Config Action system come from Future of the Config Action system How can people help out How does the Config Action system help with Drupal CMS Resources Event platform Config action list Guests Alex Pott - alexpott Adam Globus-Hoenich - phenaproxima Hosts Nic Laflin - nLighteneddevelopment.com nicxvan John Picozzi - epam.com johnpicozzi Nate Dentzau - dentzau.com nathandentzau MOTW Correspondent Martin Anderson-Clutz - mandclu.com mandclu Brief description: Have you ever wanted to set up and configure a robust events system in your Drupal website, in just a few seconds? There's a recipe for that. Module name/project name: Events Brief history How old: originally created in Mar 2013 as a distribution, but reborn as a recipe in July 2024 Versions available: 1.0.0-alpha3, compatible with Drupal 10.3 and 11 Maintainership Actively maintained Security coverage? - no stable release Documentation in the works Number of open issues: 1 open issue, which is a bug Usage stats: not tracked for recipes Maintainer(s): mandclu Module features and usage Listeners probably won't be surprised to hear that Smart Date is at the heart of what you'll get when you apply the Events recipe You will have an Event content type, and a view to list upcoming and past events The recipe will also set up add-to-calendar links on your event page, making it easy for your site visitors to be reminded of when your event will take place There are companion recipes to add a calendar view, to be able to associate locations (with maps), and to add event registration A modified version of the Events recipe has already been integrated into Drupal CMS, so it will be even easier to apply for a site based on that Internally it makes use of the createIfNotExists and setComponents config actions, which is why I thought it would be relevant to today's discussion

Sep 16, 20241h 18m

Talking Drupal #466 - Progressive Migration

Today we are talking about Progressive migration with Drupal, What it is, and how you can do it with your organization with guest Stephen Cross. We'll also cover Views JSON Source as our module of the week. For show notes visit: www.talkingDrupal.com/466 Topics What is a progressive migration What other types of migration are there What problem does progressive migration solve at the ATF What versions of Drupal are involved Technical implementation Technical challenges Non-Technical challenges Processes needed for success When to use another migration process Resources Drupal GovCon Presentation - Progressive Migration Talking Drupal #334 - Managing Drupal Teams in Government Guests Stephen Cross - stephencross.com stephencross Hosts Nic Laflin - nLighteneddevelopment.com nicxvan John Picozzi - epam.com johnpicozzi Nate Dentzau - dentzau.com nathandentzau MOTW Correspondent Martin Anderson-Clutz - mandclu.com mandclu Brief description: Have you ever wanted to use Drupal's Views interface to allow visitors to browse and navigate data from another source? There's a module for that Module name/project name: Views JSON Source Brief history How old: created in Apr 2020 by Pradeep Venugopal (venugopp), but recent releases are by Viktor Holovachek (astonvictor), a member of the Ukraine Drupal community Versions available: 2.0.2 compatible with Drupal 8.8 and newer, all the way up to Drupal 11 Maintainership Actively maintained Security coverage Documentation: pretty lengthy README to help you get started Number of open issues: 17 open issues, 4 of which are bugs against the current branch, although one had a fixed merged in the past week Usage stats: 1,641 sites Module features and usage After installing the module, you can create a view and specify it should show "JSON" instead of some kind of content entity In the view settings you can then provide a URL for where to retrieve the JSON, and an optional Apath value to indicate a section of the data to show It also supports contextual filters, so you can create a single view that will show different sections of data depending on the path used to access it From there you can build out your view in the normal way: using fields to specify what data should be shown and how, filters to limit which rows will be shown, and sort criteria to specify the order in which it will be listed. And of course, the ability to expose controls for users to filter and sort the data in ways that meet their own needs make this an extremely powerful way to make data available to your site's visitors We spoke a couple of episodes ago about how powerful it can be to use Drupal as the "glass" or experience layer through which visitors can interact with other systems, and I think this is another great example of that

Sep 9, 20241h 10m

Talking Drupal #465 - Greater Cleveland RTA

Today we are talking about The Greater Cleveland RTA, How they use Drupal, and how they built a Drupal team with guests Mike Cermak & Rithya Lath. We'll also cover Geofield Directions as our module of the week. For show notes visit: www.talkingDrupal.com/465 Topics What does the Greater Cleveland RTA do Is the RTA a state agency What kind of Digital Service do you provide How does the GCRTA use Drupal Whay was Drupal selected Let's talk about the team How long has the team existed and how many people What type of skill makeup doest hte team have Local development and deployment Point and click learning, how do you keep up to speed now Day to day responsibilities Drupal con and Starshot Resources Greater Cleveland RTA Guests Rithya Lath - ral1239 Mike Cermak - riderta.com MikeCermak Hosts Nic Laflin - nLighteneddevelopment.com nicxvan John Picozzi - epam.com johnpicozzi MOTW Correspondent Martin Anderson-Clutz - mandclu.com mandclu Brief description: Have you ever wanted to make it easy for visitors to your Drupal site to get directions to a location via Google Maps? There's a module for that. Module name/project name: Geofield Directions Brief history How old: created in Feb 2021 by Christopher Martin (ccjjmartin), though recent releases are by Allan Chappell (generalredneck) Versions available: 1.0.1, compatible with Drupal ^8.8 ^9 || ^10 ^11 Maintainership Minimally maintained, Maintenance fixes only Security coverage Test coverage Documentation? Not even a README Number of open issues: 1 open issue, not a bug Usage stats: 26 sites Module features and usage The module provides a new field formatter, so you can install it and then update a view mode to use Geofield Directions. Now your content display will include a link to get directions You can figure the text of the link, whether the link should open in a new tab, the magnification of the destination map, and more The module also includes token support, so you can dynamically include things like the name of the location in the link text I think the only downside I can see is that because this is implemented as a formatter, you have to choose the directions link OR a map, where I could foresee sites wanting to show both

Sep 2, 20241h 1m

Talking Drupal #464 - Drupal Content Production

Today we are talking about Producing content with Drupal, How Drupal can help content producers, and ways it could be better with guest Jerry Ta. We'll also cover Stage File Proxy as our module of the week. For show notes visit: www.talkingDrupal.com/464 Topics Brief overview of Urban Institute using Drupal What are the day to day responsibilities of a content producer Layout Builder or Paragraphs What is your opinion You've been in content production for almost 2 decades, what was your first website editing tool. How long have you been using Drupal What is your number one wish the Drupal community would solve Drupalcon What value do you look for for a content producer What is the hardest part of using Drupal Starshot reaction Predictions for Drupal in 5 years for content producers Resources Modules for replacing files on Drupal - , Media Entity File Replace, etc. File Replace Media Entity File Replace File Field Replace Content Sync Tokens with CKEditor module Shortcode Common Spot Scheduled transitions Experience builder https://drupal.slack.com/archives/C072JMEPUS1 https://www.drupal.org/project/experience_builder Starshot https://drupal.slack.com/archives/C072BF486FN https://www.drupal.org/project/starshot Guests Jerry Ta - joshmiller Hosts Nic Laflin - nLighteneddevelopment.com nicxvan John Picozzi - epam.com johnpicozzi Josh Miller - joshmiller MOTW Correspondent Martin Anderson-Clutz - mandclu.com mandclu Brief description: Have you ever wanted to work on code or configuration changes to your Drupal site in a non-production environment, without having to copy over all the images and other content files? There's a module for that. Module name/project name: Stage File Proxy Brief history How old: created in Jan 2011 by netaustin, by recent releases are by Stephen Mustgrave, who listeners will probably recognize from the Needs Review initiative, among his many other Drupal contributions Versions available: 7.x-1.10, 3.0.0-alpha2, and 3.1.0, the last of which works with Drupal 10.3 and 11 Maintainership Actively maintained Security coverage Test coverage Documentation - not a lot, but it has been the subject of numerous blog posts over the years Number of open issues: 15 open issues, 2 of which are bugs against the current branch Usage stats: 16,710 sites Module features and usage Once you have Stage File Proxy site up on your non-production site, when the environment gets a request for a content file it doesn't have like an image, it will query the production site to create a local copy It also has a mode where those requests are served 301 redirects to their location on the production server, so no files are ever copied Once you have the module installed, you can set the origin website URL using the admin UI, using a drush variable-set command, or you can add a line to your settings.php file. Also, if you have simple HTTP authentication set up on the site you want to pull from (for example using the Shield module), you can add URL-encoded versions of the username and password to the origin URL, and the module will still be able to copy down the files. This module was previously covered in this podcast way back in episode #33, but I thought it was worth bring back because it is so useful for working on site locally or across non-production environments

Aug 26, 20241h 13m

Talking Drupal #463 - Drupal vs DIY Site Builders

Today we are talking about DIY Site Builders, what are the benefits over Drupal (If Any), and When using Drupal makes sense with guest Ivan Stegic. We'll also cover Drupal 11 as our module of the week. For show notes visit: www.talkingDrupal.com/463 Topics What is a DIY site builder Does TEN7 use DIY site builders How are DIY site builders better than Drupal Are they less expensive than Drupal HAve you ever suggested a site builder to a client What does a migration from a site builder look like Do you think starshot will make Drupal competitive with site builders Resources Workspaces Extra Talking Drupal 451 - Just say Drupal Shopify Webflow Wix Squarespace Wordpress vip Cosmic.build Preshow: Eurion constellation Guests Ivan Stegic - ten7.com ivanstegic Hosts Nic Laflin - nLighteneddevelopment.com nicxvan John Picozzi - epam.com johnpicozzi Josh Miller - joshmiller MOTW Correspondent Martin Anderson-Clutz - mandclu.com mandclu Brief description: Have you been wanting a version of Drupal that can use Workspaces, Recipes, and Single Directory Components, while running all the latest versions of its underlying technologies? Drupal 11 is all of that and more Module name/project name: Drupal 11 Brief history How old: created on Aug 2 by catch of Tag1 and Third & Grove Module features and usage Limited additions vs 10.3: by design to make the transition easier Mostly in the recipes API, e.g. new config actions Recap of new features vs. 10.0 Workspaces Revisions and workflow are possible in the UI for Blocks and Taxonomy Terms UI updates for creating and reusing fields, as well as bulk content operations New Access Policy API and Single Directory Components New Navigation and Announcements Feed modules Contrib support out of the gate: about ⅔ of the top 200 modules already support Drupal 11 Adding modules that Rector estimates will only need info.yml or automated fixes brings us to over 80% of the top 200, or about 75% of all Drupal 10-compatible projects on Drupal.org Updated dependencies: PHP 8.3, Symfony 7, CKEditor 5 42.0,2, Twig 3.9, Yarn 4, jQuery 4.0.0-beta, jQuery UI 1.14-beta.2 and more Modules moved to contrib (smaller core): Actions UI Activity Tracker Book Forum Statistics Tour Drupal 10 will receive maintenance support until mid-2026, so the community created this release of Drupal 11 early to give sites as much time as possible to make the transition, in this case almost 2 years!

Aug 12, 20241h 9m

Talking Drupal #462 - DrupalCon Singapore

Today we are talking about DrupalCon Singapore, What you can expect, and What's next for Drupal in Asia with guest Mike Richardson & Surabhi Gokte. We'll also cover Filefield Paths as our module of the week. For show notes visit: www.talkingDrupal.com/462 Topics When is Drupalcon Asia The last one was in 2016, what did it take to reprise How do you handle language barriers What are your roles in the organizing committee Steering committee and Drupal South What can attendees expect Any special programming What kind of diversity is expected from attendees Driving from Mumbai to Singapore is 110 hours Will Dries be there Can we expect future Drupalcon Asia's Planning and logistics regarding coffee Starshot Resources DrupalCon Singapore Droptimes Drupal camp Pune Steering committee for Drupal South Linux Australia Council DrupalCon Singapore Sponsorship Email [email protected] Park Royal Collection Marina Bay Singapore Wiki Singapore Visa Guests Mike Richardson - Singapore DrupalCon richo_au Surabhi Gokte - surabhi-gokte Hosts Nic Laflin - nLighteneddevelopment.com nicxvan John Picozzi - epam.com johnpicozzi Josh Miller - joshmiller MOTW Correspondent Martin Anderson-Clutz - mandclu.com mandclu Brief description: Have you ever wanted to use a variety of tokens to customize the directory and file names of your uploaded files? There's a module for that. Module name/project name: File (Field) Paths Brief history How old: created in July 2008 by Stuart Clark (Deciphered), though recent releases are by Oleh Vehera (voleger) of Golems GABB Versions available: 7.x-1.2 and 8.x-1.0-beta7, the latter of which supports Drupal 9.3 or newer, and Drupal 10 Maintainership Seeking co-maintainers Security Coverage Opted in, but no coverage in practice for Drupal 9 or 10 Test coverage Number of open issues: 131 open issues, 50 of which are bugs against the current branch Usage stats: 34,609 sites almost 35,000 sites Module features and usage This module allows you to customize file names and paths by leveraging a variety of entity-based tokens It also integrates with the Pathauto module, giving you options to clean up the tokens for example by removing slashes, filtering out words or punctuation, and so on It can also work with the Transliteration module to convert unicode characters into US-ASCII Filefield Paths has options to rename and move existing files, and can retroactively rename files, effectively bulk updating and moving all your existing files It can also work with the Redirect module to automatically create redirects from the old path and filename to the new location, when renaming I'd also like to give a tip of the cap to Jim Birch of Kanopi for suggesting this module, when I was talking to a customer who was looking to achieve pretty much exactly what this module does

Aug 5, 20241h 5m

Talking Drupal #461 - Distributions

Today we are talking about The Benefits of Distributions, If they have drawbacks, and what the future of distributions looks like with guest Rajab Natshah and Mohammed Razem. We'll also cover Google Analytics Reports as our module of the week. For show notes visit: www.talkingDrupal.com/461 Topics What is a distribution How does this differ from profiles What does Varbase provide What types of users is Varbase geared towards Paragraphs or Layout Builder Vardoc How do you overcome fear of lock-in What do you think the future of distributions look like considering recipes Any plans to move Varbase to recipes Starshot Resources Varbase Distribution Vardoc Google analytics counter United nations refugee agency George washington university City of Detroit Bootstrap Layout Builder Bootstrap Styles Visual Distribution Operator Profile inheritance issue Starshot work tracks Linux from Scratch Guests Rajab Natshah - rajab-natshah Mohammed Razem - mohammed-j-razem Hosts Nic Laflin - nLighteneddevelopment.com nicxvan John Picozzi - epam.com johnpicozzi Josh Miller - joshmiller MOTW Correspondent Martin Anderson-Clutz - mandclu.com mandclu Brief description: Have you ever wanted to display Google Analytics charts directly within your Drupal website? There's a module for that. Module name/project name: Google Analytics Reports Brief history Created in Apr 2011 by raspberryman, but recent releases are by today's guest Rajab Natshah Versions available include 7.x-3.2, 8.x-3.2, and 4.0.0, that last two of which support Drupal 10 and 11 Maintainership Actively maintained, recent releases were less than a month ago Security coverage A documentation guide for older versions, and a README with detailed instructions to get it set up Number of open issues: 76 open issues, 9 of which are bugs against the current branch Usage stats: 4,272 sites Module features and usage To set up this module, you first need to set up the API connection in the Google Developers Console, and download the client secret JSON You'll then upload that into the Google Analytics Report API submodule along with the property ID to enable the connection Next, you need to install the Charts module, and either the Google Charts or Highcharts sub-module to see graphical reports You will now have a new Google Analytics Summary in your site's reports menu, and new "Google Analytics Reports Summary Block" and "Google Analytics Reports Page Block" blocks available I haven't had a chance to try the 4.0 version of this module yet, but I have used older versions with a variety of dashboard solutions, including Moderation Dashboard and Homebox One of the many benefits of using a powerful, open source framework like Drupal to build your site is its ability to act as the "glass" for a variety of other systems, and this module is a perfect demonstration of that

Jul 29, 20241h 15m

Talking Drupal #460 - Preconfigured CMS Solutions

Today we are talking about Preconfigured CMS Solutions, How they can help your business, and The best way to build them in Drupal with guests Baddy Sonja Breidert and Dr. Christoph Breidert. For show notes visit: www.talkingDrupal.com/460 Topics Spain What is a Preconfigured CMS / Drupal Solution Who is the audience What business objectives can preconfigured solutions solve What are the ingredients How do you manage theming How do you manage customized design What do you do if your client has a need that your preconfigured solution does not solve What about Starshot Did the two of you meet over Drupal How do you manage work life balance Resources TRY drupal Design system Front end editing Guests Christoph Breidert - 1xINTERNET breidert Hosts Nic Laflin - nLighteneddevelopment.com nicxvan John Picozzi - epam.com johnpicozzi Baddý Sonja Breidert - 1xINTERNET baddysonja MOTW Correspondent Martin Anderson-Clutz - mandclu.com mandclu Brief description: Have you ever wanted to customize the way Google Maps appear on your Drupal site? There's a module for that. Module name/project name: Styled Google Map Brief history How old: created in Mar 2014 by iampuma, but recent releases are by Artem Dmitriiev (a.dmitriiev) of 1xINTERNET Versions available: 7.x-2.0, 8.x-1.7, and 8.x-2.6 versions available, the last of which works with Drupal 8, 9, 10, and 11 Maintainership Actively maintained, latest release a week ago Security coverage Has a Documentation page and lots of information on the project page Number of open issues: 8 open issues, 1 of which is a bug against the current branch, though it was actually fixed in the latest release Usage stats: 1,764 sites Module features and usage The module provides allows your Drupal to use custom styles, which you can copy and paste from SnazzyMaps.com, or create from scratch using a configuration widget on Github that is linked from the project page You will be able to use custom markers by using the System Stream Wrapper module You can also specify popups for the markers, using a field or a view mode If you use the companion styled_google_views module, you can also show multiple locations, and define clustering options Styled Google Map also has integration with Google's Directions service, so visitors can easily get turn-by-turn directions for how to reached their chosen location The module also includes a demo submodule you can use to quickly set up a working example to illustrate all the different options available using Styled Google Map

Jul 22, 20241h 16m

Talking Drupal #459 - Off The Cuff 8

Today we are talking about Config Actions, The Panels Favorite Drupal Modules, and Drupal Contribution. We'll also cover Transform API as our module of the week. For show notes visit: www.talkingDrupal.com/459 Topics New Config Action: Place Block Favorite Contrib modules Slack channels Preparing for Drupal 11 Drupal events Resources Config Action Place Block Front End Editing Drupal Module Gin Admin Theme Migrate Boost Keysave Navigation Matt Glaman Smart Date Code Blog Post Hosts Nic Laflin - nLighteneddevelopment.com nicxvan John Picozzi - epam.com johnpicozzi Martin Anderson-Clutz - mandclu.com mandclu Baddý Sonja Breidert - 1xINTERNET baddysonja MOTW Correspondent Martin Anderson-Clutz - mandclu.com mandclu Brief description: Have you ever wanted to expose your Drupal site's data as JSON using view modes, formatters, blocks, and more? There's a module for that. Module name/project name: https://www.drupal.org/project/transform_api Transform API Brief history How old: created in Sep 2023 by LupusGr3y, aka Martin Giessing of Denmark Versions available: 1.1.0-beta4 and 1.0.2 versions available, both of which work with Drupal 9 and 10 Maintainership Actively maintained, in fact the latest commit was earlier today Security coverage Documentation: in-depth README and a full user guide Number of open issues: 14 open issues, 3 of which are bugs, but none against the current branch Usage stats: 2 sites Module features and usage After installing Transform API, you should be able to get the JSON for any entities on your site by adding "format=json" as a parameter to the URL To get more fields exposed as JSON, you can configure a Transform mode, using a Field UI configuration very similar to view modes You can also add transform blocks to globally include specific data in all transformed URLs, in the same way you would use normal blocks to show information on your entity pages. The output of transform blocks is segmented into regions, Where Drupal's standard engine produces render arrays that ultimately become HTML, Transform API replaces it with an engine that produces Transform Arrays that will ultimately become JSON Where Drupal's standard JSON:API supports more or less exposes all information as raw data for the front end to format, Transform API allows for more of the formatting to be managed on the back end, where it will use Drupal's standard caching mechanisms, permission-based access, and more Transform API also supports lazy transformers, which are callbacks that will be called after caching but before the JSON response is sent You can also use alter hooks to manipulate the transformed data

Jul 15, 202448 min

Talking Drupal #458 - Drupal & Next.js

Today we are talking about Next.js, what it is, and how to integrate it with Drupal with guest John Albin Wilkins. We'll also cover Next.js Webform as our module of the week. For show notes visit: www.talkingDrupal.com/458 Topics What is Next.js What kind of server do you need How is it used on the web Does it only work on react based systems Why would someone want to integrate with Drupal When changes are made in the content how do you update the app On the module page there are a lot of references to Preview, is this something Next does well What is server side rendering How does Next work with menus and views Any preference on the api for json api vs graphql Performance Editorial experience Responsive images Will Drupal ever ship with a headless front end Winner of the TPOTM Resources Next.js Next.js Wikipedia Next.js Webform Tutorial Example Next.js template to render an arbitrary webform Decoupled Menus Initiative FormDazzle Trival Patch of the Month https://www.drupal.org/project/drupal/issues/258089 Flexinode Guests John Albin Wilkins - john.albin.net JohnAlbin Hosts Nic Laflin - nLighteneddevelopment.com nicxvan John Picozzi - epam.com johnpicozzi Baddý Sonja Breidert - 1xINTERNET baddysonja MOTW Correspondent Martin Anderson-Clutz - mandclu.com mandclu Brief description: Have you ever wanted to build a webform in Drupal and have the corresponding Next.js template automatically created for you? There's a Next.js library for that. Module name/project name: Next.js Webform Brief history How old: created in Aug 2022 by Lauri Timmanee (lauriii), who listeners may know as the Drupal Core Product Manager, and one of the people leading the Starshot initiative Versions available: 1.1.1 Maintainership Test coverage Documentation - Lengthy README and a tutorial on the Acquia Dev Portal Number of open issues: 17 open issues, 3 of which are bugs Usage stats: 2,246 weekly downloads according to npmjs.com Module features and usage Using this library does require some setup on the Drupal side, including installing the Webform and Webform REST modules. There's also an extra patch to install if you want to use any autocomplete fields, and some configuration needed for both the REST resources that will be used to exchange data, and the permissions for the account that will be used to retrieve and submit data Out of the box, the library supports over 40 webform components, but you can also provide custom elements if you need something additional. The library also supports conditional logic, so fields can show or hide in the Next.js front end based on conditions defined in your Drupal backend The library also provides front-end validation for email confirmation, date list, and datetime fields, but back end validation is also processed for every submission There is a crowded field of headless CMS competitors, but I thought this library is a good example of the extra power and flexibility you get by using a robust, open source CMS like Drupal as the back end in your headless architecture

Jul 8, 20241h 17m

Talking Drupal #457 - Drupal Architecture

Today we are talking about Drupal Architecture, Common Site Building questions, and How we solve things with Drupal with guest Alexander Varwijk. We'll also cover Drupal 10.3 as our module of the week. For show notes visit: www.talkingDrupal.com/457 Topics Where do you start when thinking about a new site or feature. Where is the line for extending vs forking Do you have solutions that you default to when building a feature Do you find people come to Drupal with specific third party requirements What do you think about Headless When do you choose to contribute a new module to Drupal Will recipes change your architecture How do you learn about new ways of doing things Where did you get your username, are you the king of the Netherlands Resources Drupal Core Issues to split "Site builder" functionality into more granular chunks "Administer Users" permission should be separate from "Administer Account Settings" Enabling "List User" without "Administer Users" Fibers for concurrency in core (and the Revolt Event Loop) Change records for Drupal 10.3 Bigpipe to Revolt ChatGPT / CKEditor Issue Config update issue Issue for update hook divergence Tinode A free, unlimited, and flexible open source messaging platform that's been built mobile-first View transitions api Change in supported versions for the Open Social distribution Guests Alexander Varwijk - alexandervarwijk.com Kingdutch Hosts Nic Laflin - nLighteneddevelopment.com nicxvan John Picozzi - epam.com johnpicozzi Baddý Sonja Breidert - 1xINTERNET baddysonja MOTW Correspondent Martin Anderson-Clutz - mandclu.com mandclu Brief description: Have you been wanting to use Workspaces, Single Directory Components, Recipes, or the new admin menu in your Drupal site? The new Drupal 10.3 release is better for using all of these and more. Module name/project name: Drupal 10.3 Brief history How old: It was tagged on Jun 20 by catch of Tag1 and Third & Grove Features and usage In this new minor version, Workspaces is now declared stable, and Single Directory Components are now fully integrated into core, instead of being in an experimental module. Drupal 10.3 also includes the new Access Policy API that was funded as part of the Pitchburgh process kicked off at DrupalCon Pittsburgh The "super user" access policy that automatically grants user 1 every permission can now be turned off in services.yml Also, Recipes and the new Navigation menu are available as experimental features The Actions UI, Book, and Statistics modules are deprecated, and contrib projects are available Install profiles can now be uninstalled, and new sites can be installed without any profile at all 10.3 also includes a revision UI for taxonomy terms, and they can also be used with content moderation All core-provided image styles now include WebP conversion The state service now uses a cache collector for performance, which requires opt in within settings.php for existing sites There are other performance improvements, including: POST requests are now render cacheable, duplicate queries during logins are avoided, and big pipe requests now avoid reading session from the database multiple times With 10.3 developer can also make use of a new AJAX command to open a URL in a dialog, and a new DraggableListBuilderTrait, among a host of other changes Of course, there are some additional deprecations, so the Project Update Bot has already been busy creating new MRs

Jul 1, 20241h 3m

Talking Drupal #456 - DDEV Grows Up

Today we are talking about DDEV, The DDEV Community, and It's Future Sustainability with guest Randy Fay and Andrew Berry. We'll also cover DDEV Drupal Contrib as our module of the week. For show notes visit: www.talkingDrupal.com/456 Topics What is DDEV In March you posted the DDEV Project Plan for 2024, what is the contributor training initiative DDEV has grown rapidly over the past few years, what do you attribute that to You seem to be the face of DDEV, who else is involved How is DDEV funded What happens when you retire Does the DDEV Foundation have employees What is DDEV coded in What is your favorite feature of DDEV What is next How can people get involved Resources DDEV Project 2024 Plans DDEV Contributor Live Training Scheduling and signup DDEV Discord Nerdsniping XKCD Comic Level one learning xz utils Guests Andrew Berry - deviantintegral Hosts Nic Laflin - nLighteneddevelopment.com nicxvan John Picozzi - epam.com johnpicozzi Randy Fay - rfay MOTW Correspondent Martin Anderson-Clutz - mandclu.com mandclu Brief description: Have you ever wanted a local DDEV environment optimized for working on a Drupal contrib project? There's a DDEV add-on for that. Module name/project name: DDEV Drupal Contrib Brief history How old: created in Apr 2023 by Moshe Weitzman, a Drupal core maintainer, and according to his resume the first American to contribute to Drupal Versions available: 1.0.0-rc8 Maintainership Actively maintained Test coverage Documentation - Lengthy README Number of open issues: 2 open issues, 1 of which is a bug Module features and usage The add-on adds two ddev commands to help during setup: ddev poser creates a temporary composer.contrib.json, adding drupal/core-recommended as a dev dependency. It also runs composer install and yarn install so that all dependencies are available The additional ddev symlink-project command adds symlinks from your project files to an expected path within the custom modules directory of the installed version of Drupal Once it's set up, you can easily run tests locally exactly the way they will be run in GitlabCI. It's also even easier to apply any of the automatic fixes that are available, for example by running ddev phpcbf or ddev eslint with the –fix flag You can also commit the generated .ddev directory inside your project, to make it easy for other contributors to use the same tools I will note that after running ddev poser I got errors trying to use composer to add any other projects to the local environment, for example to use admin toolbar for manual testing That said, this is another great example of how the set of Drupal developer tools is always improving, and also illustrates to the power of DDEV's add-ons

Jun 24, 20241h 13m

Talking Drupal #455 - Top 5 uses of AI for Drupal

Today we are talking about AI Tips for Drupal Devs, AI Best Practices, and Drupal Droid with guest Mike Miles. We'll also cover AI interpolator as our module of the week. For show notes visit: www.talkingDrupal.com/455 Topics Top 5 tips Idea Generation (Ideation) Code Generation Debugging Content Generation Technical Explanations How do you suggest people use AI for Ideation Is MIT Sloan using AI to help with Drupal Development Does that code get directly inserted into your sites What are some common pitfalls Is your team using AI for debugging Any best practices you have found helping when working with AI Is MIT Sloan using AI for content generation What is an example of how you use AI for technical explanations What is your view ont he future of AI in Drupal, do you think AI will replace Drupal developers Resources Drupal Droid Talking Drupal - Drupal Droid Workflows of ai AI guidelines https://ist.mit.edu/ai-guidance https://mitsloanedtech.mit.edu/ai/ Using AI as a Development Tool Drupal Starshot: Delivering on a promise to Ambitious Site Builders Guests Michael Miles - mike-miles.com mikemiles86 Hosts Nic Laflin - nLighteneddevelopment.com nicxvan John Picozzi - epam.com johnpicozzi Randy Fay - rfay MOTW Correspondent Martin Anderson-Clutz - mandclu.com mandclu Brief description: Have you ever wanted to use AI to help populate entity fields that were left blank by Drupal content authors? There's a module for that. Module name/project name: AI Interpolator Brief history How old: created in Sep 2023 by Marcus Johansson of FreelyGive Versions available: 1.0.0-rc4 Maintainership Actively maintained, recent release in the past month Security coverage - opted in, needs stable release Test coverage Documentation - User guide Number of open issues: 18 open issues, none of which are a bugs Usage stats: 94 sites Module features and usage In scientific fields, interpolation is the process of using known data to extrapolate or estimate unknown data points. In a similar way this module helps your Drupal site provide values for fields that didn't receive input, based on the information that was provided. Fundamentally Interpolator AI provides a framework and an API, and then relies on companion modules for processing, either by leveraging third-party services like AI LLMs, or PHP-based scripting. There are existing integrations with a variety of AI services, including OpenAI, Dreamstudio, Hugging Face, and more. You can add retrievers to help extract and normalize the content you're processing, for example photos from an external site, and other tools to help normalize and optimize content and media, and optimize any prompts you will be using with AI services. You can also extend the workflow capabilities of AI Interpolator, for example using the popular and powerful ECA module that we've talked about before on this show.

Jun 17, 20241h 11m

Talking Drupal #454 - Drupal API Client

Today we are talking about Drupal's API Client, What it does, and why you might need it with guest Brian Perry. We'll also cover Iconify Icons as our module of the week. For show notes visit: www.talkingDrupal.com/454 Topics Brian what is new with you! Elevator pitch for Drupal API Client What was Pitchburg like Is this a normalizer for JSON API Why is this JS framework agnostic What is typescript and how does Drupal API Client use it Looking at the quick start guide the second step is to create an instance, where do you do that Who is this module for Will Drupal API Client be added to core What is on the roadmap How does this relate to Chapter Three and Next.js What is the spin up time How will Starshot impact this Resources API Client API Client Quick Start NPM Packages Ideas Queue Issue - Promote API client packages to Drupal NPM namespace Drupal at your Fingertips Open collective JSON API Schema Guests Brian Perry - brianperry.dev brianperry Hosts Nic Laflin - nLighteneddevelopment.com nicxvan John Picozzi - epam.com johnpicozzi Randy Fay - rfay MOTW Correspondent Martin Anderson-Clutz - mandclu.com mandclu Brief description: Have you ever wanted to empower your content creators to place icons from a massive, open source library into your Drupal site? There's a module for that. Module name/project name: Iconify Icons Brief history How old: created on May 22 of this year, so less than two weeks ago, by David Galeano (gxleano) of Factorial Versions available: 1.0.0 which supports Drupal 9.3 or newer, right up to Drupal 11 Maintainership Actively maintained Security coverage Test coverage Documentation Number of open issues: 2 open issues, neither of which are bugs Usage stats: 1 site Module features and usage Out of the box the module provides both a CKEditor button for placing icons, and a new field type. It even provides a new form element that can be used in custom forms, a render element you can use to programmatically put an icon into something like a custom block, and a Twig extension that can be used to place icons in templates. According to the project page, the Iconify icon library includes more than 200,000 icons, though in my limited experimentation it seems like there are some duplicates between icon sets. Speaking of which, Iconify provides over 150 different icon sets, and in this module's configuration you can specify which ones you want to be available on your site. Placing an icon is as simple as using an autocomplete to search the names of the icons available, and a preview is shown for each of the matches found. The field widget and the CKEditor button both give content creators options for what size and color to use for the icons. For myself I'd prefer to lock some of those options down (for example, make that part of the field's display configuration instead), but I'm sure that could be added as part of a different widget. I can think of a few Drupal sites I've built where this would have been really handy, so I'm interested to play around with this module some more, and see how it evolves.

Jun 10, 202458 min

Talking Drupal #453 - Urban Institute

Today we are talking about Urban Institute, What they do, and How they use Drupal with guest Josh Miller. We'll also cover Access Unpublished as our module of the week. For show notes visit: www.talkingDrupal.com/453 Topics Tell us how you got started with Drupal What does Urban Institute do What do you do at Urban Institute Number of people on dev team Number of sites How does Urban Institute use Drupal Are you using a custom upstream How many sites on Drupal 7 Are you doing Page builders What kind of front end tools do you use What is the preferred local development tool Why did Urban Institute choose Drupal What is the hardest part of using Drupal at a large non profit What is the most interesting interactive experience you have built for Urban Institute Resources Urban Institute https://www.urban.org/ https://datacatalog.urban.org https://upward-mobility.urban.org/ Josh's new custom home Urban Institute at DrupalCon 2023 DKAN Drupal GovCon Post-recording https://www.palantir.net/blog/open-all-bringing-collaborative-editing-drupal-node https://www.palantir.net/edittogether https://www.drupal.org/project/yjs Guests Josh Miller - joshmiller Hosts Nic Laflin - nLighteneddevelopment.com nicxvan John Picozzi - epam.com johnpicozzi Randy Fay - rfay MOTW Correspondent Martin Anderson-Clutz - mandclu.com mandclu Brief description: Have you ever wanted to get feedback on unpublished content from people who aren't users on your Drupal site? There's a module for that. Module name/project name: Access Unpublished Brief history How old: created in Feb 2011 by aberg, though recent releases are by Christian Fritsch (chr.fritsch) of Thunder Versions available: 8.x-1.5 Maintainership Security coverage Test coverage Number of open issues: 58 open issues, 17 of which are bugs against the current branch Usage stats: 8,638 sites Module features and usage Once installed, this module adds a new element to your unpublished entity forms, for generating links with a special hash value. When generating the link, you can choose how long the hash value can be used for access. Within that form section, you can copy the access URL for any of your generated tokens, and then paste into an email or some kind of direct message. You will need to set a permission for users to access content using the special access URLs, so if you want anyone with the URL to be allowed access, you'll need to assign that permission to the Anonymous user role The access lifetime can be anything from 1 day to unlimited (never expires), and you can set the default value in the settings form. That form also allows you to set the URL parameter that will be used for access, gives you options to modify the HTTP headers on the unpublished page, and has a check box you can use to delete all expired tokens. Expired tokens will be deleted on cron run, and when you delete an entity any related tokens are also removed. This use case of allowing review of unpublished content for people who aren't users in the Drupal site is a request I hear on a regular (if infrequent) basis, so I've personally found this module really useful. Necessary Patch: https://www.drupal.org/project/access_unpublished/issues/3421309 Not to be confused with https://www.drupal.org/project/preview_link Preview link is missing the ability to set length of access.

Jun 3, 20241h 6m

Talking Drupal #452 - Starshot & Experience Builder

Today we are talking about web design and development, from a group of people with one thing in common… We love Drupal. This is episode #452 Starshot & Experience Builder. For show notes visit: www.talkingDrupal.com/452 Topics What is Starshot What is Experience builder How will Starshot build on Drupal Core Will Experience builder be added to Core Listener thejimbirch: When will people hear about their pledge Listener brook_heaton: Will experience builder be compatible with layout builder Will Experience builder allow people to style content Listener Matthieu Scarset Who is Starshot trying to compete with Listener Andy Blum Does the DA or other major hosting companies plan to set up cheap, easy hosted Drupal Listener Ryan Szarma Who does this initiative serve in the business community How can people get involved Resources Drupal Starshot Experience Builder Guests Lauri Eskola - lauriii Hosts Nic Laflin - nLighteneddevelopment.com nicxvan John Picozzi - epam.com johnpicozzi Matthew Grasmick - grasmash MOTW Correspondent Martin Anderson-Clutz - mandclu.com mandclu Brief description: Have you ever wanted to have your modules create content when they're installed? There's a module for that. Module name/project name: Default Content Brief history How old: created in Oct 2015 by prolific contributor Lee Rowlands (larowlan) though the most recent releases are by Sascha Grossenbacher (Berdir), also a maintainer of many popular Drupal modules Versions available: 2.0.0-alpha2, which works with Drupal 9 and 10 Maintainership Security coverage: opted in, but needs a stable release Test coverage Documentation Number of open issues: 105 open issues, 29 of which are bugs against the current branch Usage stats: Almost 20,000 sites Module features and usage Provides a way for modules to include default content, in the same way that many modules already include default configuration The module exports content as YAML files, and your module can specify the content that should be exported by listing the UUIDs in the info.yml file It also provides a number of drush commands, to export a single entity, to export an entity and all of its dependencies, or to bulk export all of the content referenced in a module's .info.yml file There is also a companion project to export default content using an action within a view, which also makes me think it could probably be automated with something like ECA if you needed that Exported content should be kept in a content directory in your module, where it will imported during install on any site that has the default_content module installed I thought this would be a good module to cover today because Drupal core's recipe system also includes support for default content, so when you install a recipe it will similarly import any YAML-encoded content in the recipe. In fact, I used this module for the first time exporting taxonomy terms I wanted a recipe to create as default values for a taxonomy it creates. Since Recipes will be a big part of Starshot, I expect default_content to be getting a lot of use in the coming months

May 27, 20241h 23m

Talking Drupal #451 - Just Say Drupal

Today we are talking about Drupal Marketing with version numbers, what competitors are doing, and Learning to Just Saying Drupal with guest Ivan Stegic. We'll also cover Trash as our module of the week. For show notes visit: www.talkingDrupal.com/451 Topics What is the premise of Just Say Drupal Why do you think it is important to drop the version number Where do you suggest we drop verison numbers In sales, if you don't mention version, how do you talk to clients Why could using version numbers be detrimental What do you suggest we call Drupal 7 Have you spoken to the Drupal marketing team At Drupalcon they unveiled a new Brand Guide What do you think of Drupal Starshot Where do we go from here Resources Ten7 Blog - Just Say Drupal https://ten7.com/blog/post/just-say-drupal https://justsaydrupal.org Drupal issue Drupal Brand Guide Drupal.org Issue Starshot https://www.drupal.org/starshot https://www.hojtsy.hu/blog/2024-may-13/drupal-11-deep-dive-watch-recording-present-your-own-free-slides https://herchel.com/articles/thoughts-drupals-new-starshot-initiative https://mglaman.dev/blog/starshot-recipe-cook-ambitious-drupal-applications Drupal tooling Guests Ivan Stegic - ten7.com ivanstegic Hosts Nic Laflin - nLighteneddevelopment.com nicxvan John Picozzi - epam.com johnpicozzi Matthew Grasmick - grasmash MOTW Correspondent Martin Anderson-Clutz - mandclu.com mandclu Brief description: Have you ever wanted your Drupal site to have a trash bin for content entities, so they wouldn't be immediately deleted from the database? There's a module for that Module name/project name: Trash Brief history How old: created in Feb 2008 by rötzi, though recent releases are by Andrei Mateescu (mah-teh-sku) (amateescu) of Tag1 Versions available: 3.0.3, compatible with Drupal 9, 10, and 11 Maintainership Actively maintained, release less than two months old Security coverage Test coverage Number of open issues: 7 open issues, 3 of which are bugs against the current branch Usage stats: 1899 sites Module features and usage Once the module is installed, you choose which entity types on your site should use the new trash storage For all the configured entities, deleting a piece of content moves it into the new trash storage, along with a timestamp set for when it went into the trash You can configure whether or not the trash should be automatically purged on a periodic basis, and if so how often that should happen It seems that there are some entities for which the Trash module currently excludes its functionality, such as users, comments, taxonomy terms, and so on. The note in the code indicates that more testing is needed, so any of our listeners who wants to trash entities for any of these types could try out patching the TrashSettingsFormand on a local copy and provide feedback based on how things work The ability to restore deleted content is a request I've heard a number of times, so this could be a really useful module for making Drupal work in ways that certain teams expect

May 20, 20241h 17m

Talking Drupal #450 - Certification & Exam Prep

Today we are talking about Certification & Exam Prep, Resources for studying, and tips to get a passing grade with guests Chad Hester & Martin Anderson-Clutz. We'll also cover Quiz Maker as our module of the week. For show notes visit: www.talkingDrupal.com/450 Topics Why are exams and certifications important to dev's After going through the Talking Drupal Skills Upgrade mini series do you feel preparted to take an Acquia certification How should someone get ready What are some struggles people may have getting ready What does the plan look like for someone getting ready Does Acquia provide pre tests Did Skills Upgrade prepare you for this type of assessment What happens if you do not pass How do you know you're ready Tips and tricks for taking a test Where do you take the test Questions to someone who has taken the test Special surprise Resources Acquia Certification Study Guides Acquia Certification Information Widgets Burritos D8 Certification Study Guide [email protected] for questions Guests Chad Hester - chadkhester.com chadhester Martin Anderson-Clutz - mandclu.com mandclu Hosts Nic Laflin - nLighteneddevelopment.com nicxvan John Picozzi - epam.com johnpicozzi Matthew Grasmick - grasmash MOTW Correspondent Martin Anderson-Clutz - mandclu Brief description: Have you ever wanted to build and deliver interactive quizzes on your Drupal website? Module name/project name: Quiz Maker Brief history How old: created in Apr 2024 (the last couple of weeks) by Roman Chekhaniuk (r_cheh) Versions available: 1.0.5, which works with Drupal 9, 10, and 11 Maintainership Actively maintained Not yet opted into Security coverage, but being so new it's possible they started the process of getting the project reviewed Number of open issues: 0 Usage stats: Not currently installed on any sites yet, according to Drupal.org Module features and usage The module defines a number of of custom entities to allow your site to define very flexible quizzes, that can include options like the amount of time allowed, pass rate, maximum number of attempts, randomizing the sequence of the questions, and more The module also defines custom plugins for questions, responses, and answers, so you can extend it to handle very custom use cases The Quiz module is very popular in this space but the version you can use with modern versions of Drupal is still in alpha, so it's great to see another option available, especially for sites that don't need anything as complex as the Opigno LMS

May 13, 20241h 6m

Talking Drupal #449 - Agile Methodologies

Today we are talking about Agile Methodologies, How to pick the best one, and why they matter with guest Chris Wells. We'll also cover CKEditor Text Transformation / AutoCorrect as our module of the week. For show notes visit: www.talkingDrupal.com/449 Topics Drupal FL Camp talk Fundamentals of Agile How do you square long term planning What is Redfin Solutions's preferred methodology What is Crystal Agile Methodology Do other methodologies have web specific versions Would you agree that large companies can use different agile methodologies Have you ever used Scrumban Listener Question: Shivan xamount:: Story points are usually equated to fibonacci numbers. These are not supposed to correlate to hours, what do you think about that? Resources Drupal Camp FL - Letting Agile Emerge Scrum vs Kanban vs Scrumban Pirate module Alfred auto expansion 4 Kitchen's talk - Consultancy scrum Sam Ryan project management methodologies Guests Chris Wells - chrisfromredfin.dev chrisfromredfin Hosts Nic Laflin - nLighteneddevelopment.com nicxvan John Picozzi - epam.com johnpicozzi Matthew Grasmick - grasmash MOTW Correspondent Martin Anderson-Clutz - mandclu Brief description: Have you ever wanted CKEditor to autocorrect symbols like the copyright mark, the "not equals" sign, and fractions, from their text equivalents? There's a module for that Module name/project name: CKEditor Text Transformation / AutoCorrect Brief history How old: created in Mar 2024 by Gedvan Dias of Redfin Solutions Versions available: 1.0.0-alpha1, which works with CKeditor 4 on Drupal 8, and 2.0.0-alpha1, which works with CKEditor 5 on Drupal 9 and 10 Maintainership Actively maintained, was released just a few weeks ago Not much documentation of its own, but the module leverages CKEditor's Automatic text transformation, which has a fair bit of documentation on CKEditor.com Number of open issues: only 1 open issues, which is the Project Update Bot's automatically-created Drupal 11 compatibility issue Usage stats: 8 sites Module features and usage By default the module enables four categories of transformations: 'symbols', 'mathematical', 'typography', and 'quotes' You can override the module's plugin if you want a different set enabled, but the module also provides a hook you can use to alter the active sets or define custom transformations, similar to using emojis in Slack, for example

May 6, 20241h 10m

S1 Ep 9Skills Upgrade #9

Welcome back to "Skills Upgrade" a Talking Drupal mini-series following the journey of a D7 developer learning D10. This is the final episode, 9. Topics Review status of Chad's Smart Date test Panel discussion Chad, What was your biggest takeaway? Mike, How do you approach this type of one on one mentorship differently than your courses? AmyJune, do you think there are other types of focused mentorship like this that would be valuable to the community? Chad, what was the most surprising thing you learned in Modern Drupal vs Drupal 7? Michael, what did you learn through this process? How do you think people will use this journey to help their learning process? Chad, what are your plans for your next contribution? Resources Chad's Drupal 10 Learning Curriclum & Journal Chad's Drupal 10 Learning Notes The Linux Foundation is offering a discount of 30% off e-learning courses, certifications and bundles with the code, all uppercase DRUPAL24 and that is good until June 5th https://training.linuxfoundation.org/certification-catalog/ Hosts Nic Laflin - www.nlightened.net AmyJune Hineline - @volkswagenchick Guests Chad Hester - chadkhester.com @chadkhest Mike Anello - DrupalEasy.com @ultimike

May 1, 202426 min

Talking Drupal #448 - D11 Readiness & PHPStan

Today we are talking about Drupal 11 Readiness, What you need to think about, and PHPStan with guest Matt Glaman. We'll also cover MRN as our module of the week. For show notes visit: [www.talkingDrupal.com/448https://www.talkingDrupal.com/448) Topics What do we mean by Drupal 11 Readiness How will this be different than 9 and 10 Top 5 tips D11 Meeting and slack channel Will this be easier Major issues What is PHPStan How does it play a role How is PHPStan Drupal different than PHPStan Does using PHPStan with drupal reduce the need for tests How do you see it evolving over the next few years Drupal 12 wishlist Resources PHPStan Drupal PHPStan Herodevs DrupalCon Party Smart date BC calls Contrib semantic versioning thoughts Change records Drop is always moving Project analysis Gabor article Drupal rector Project update working group LTS even odd PHP version PHP stan rule levels Title issue Hosts Nic Laflin - nLighteneddevelopment.com nicxvan John Picozzi - epam.com johnpicozzi Matt Glaman - mglaman.dev mglaman MOTW Correspondent Martin Anderson-Clutz - mandclu Brief description: Have you ever wanted an easy way to generate detailed release notes for your contrib projects? There's a web app for that Module name/project name: MRN which is short for Maintainer / Module Release Notes Brief history How old: created in Aug 2022 by today's guest Matt Glaman Maintainership Actively maintained, latest updates were earlier this year Code project at https://github.com/mglaman/drupal-mrn has 13 open issues Usage stats: Currently no usage reporting, but a tool I've been using a ton lately as I get modules ready for Drupal 11 Module features and usage It's very simple to use, you just enter the machine name of your project, and then the numbers of the releases you want it to compare It will generate the structure for your release note, include a spot for you to write a summary at the top, a list of contributors that links to their profiles, and a list of issues Previously part of Matt's drupalorg CLI project, MRN is now a lambda function on AWS, so there's nothing to download or install I like that you can choose which tags you want to compare, so if the release is part of a branch that doesn't yet have a stable release, I'll put a comparison to the previous release in the branch at the top, and then a comparison to the current stable release below it, so people can see the full list of everything new they'll get by moving from the stable release It's worth noting that because this works from the git history, you need to make sure you credit everyone properly before clicking to merge an MR in the Drupal.org UI. You can give credit to other people after the fact using the checkbox and they'll get contribution credits, but won't be included in the release notes generated by MRN

Apr 29, 20241h 18m

S1 Ep 8Skills Upgrade #8

Welcome back to "Skills Upgrade" a Talking Drupal mini-series following the journey of a D7 developer learning D10. This is episode 8. Topics Review Chad's questions What is the process of creating a new issue, reviewing automated tests, and creating a merge request for review by the project maintainer? https://www.drupal.org/docs/develop/git/using-gitlab-to-contribute-to-drupal https://www.drupal.org/docs/develop/git/using-gitlab-to-contribute-to-drupal/creating-issue-forks My example issue: https://www.drupal.org/project/smart_date/issues/3432819 My example merge request: https://git.drupalcode.org/project/smart_date/-/merge_requests/94 If we're not using Composer to pull the contrib module, how do we make sure that all dependencies are handled? How can someone navigate so many complex issues without getting lost or "barking up the wrong tree"? Tasks for the upcoming week Work toward getting the merge request accepted. Document learning bullet points for this journey. Resources Chad's Drupal 10 Learning Curriclum & Journal Chad's Drupal 10 Learning Notes The Linux Foundation is offering a discount of 30% off e-learning courses, certifications and bundles with the code, all uppercase DRUPAL24 and that is good until June 5th https://training.linuxfoundation.org/certification-catalog/ Hosts AmyJune Hineline - @volkswagenchick Guests Chad Hester - chadkhester.com @chadkhest Mike Anello - DrupalEasy.com @ultimike

Apr 24, 202440 min

Talking Drupal #447 - Drupal Single Sign On

Today we are talking about Drupal Single Sign On, The Benefits it brings to the Drupal Community, and A new book called Fog & Fireflies with guest Tim Lehnen. We'll also cover Drupal.org Username Field as our module of the week. For show notes visit: www.talkingDrupal.com/447 Topics What is Single Sign On (SSO) Does Drupal already support SSO Why is SSO on drupal.org important Camps using SSO Other possibilities Gitlab login Cloud IAM Why did the Drupal Association choose Cloud IAM How do you see the collaboration growing Where are we now What are the next steps How far are we from this becoming a reality What does onboarding look like Will third party sites be able to use D.O SSO Can the community help Fog & Fireflies First book Can you buy it now Resources Single Sign On is coming to Drupal.org thanks to Cloud IAM A new book called Fog & Fireflies Open ID Connect module Keycloak Neil Drumm Lucas Heddn Marco Villegas Tim Lehnen Guests Tim Lehnen - aspenthornpress.com hestenet Hosts Nic Laflin - nLighteneddevelopment.com nicxvan John Picozzi - epam.com johnpicozzi Matt Glaman - mglaman.dev mglaman MOTW Correspondent Martin Anderson-Clutz - mandclu Brief description: Have you ever wanted to have a field on user profiles specifically designed for drupal.org usernames? There's a module for that Module name/project name: Drupal.org Username Field Brief history How old: created in August 2019 by hussainweb AKA Hussain Abbas of Axelerant Versions available: 2.0.0-beta4 Maintainership Actively maintained, that release was made less than 6 months ago Test coverage Number of open issues: 8 open issues, none of which are bugs Usage stats: 1 site Module features and usage The module provides a new field type, along with its own widget and formatter With a simple checkbox, you can get the module to validate that the provided username is registered on drupal.org What's really powerful about this module is that it can also pull other information from the drupal.org profile, such as first and last name, country, bio, and more It does this by leveraging a Guzzle-based API client for drupal.org that Hussain created as part of a DrupalCon Asia developer contest I believe the intended use of the modules is to use a provided drush command to copy the values from the drupal.org username field into other fields, where they would be displayed to site visitors Although this module isn't something that a lot of sites will need, I could see it being really useful for Drupal camp websites, to automatically collect a lot of the information that many such sites ask users to populate manually I think it's also an interesting use of the Drupal.org API, and could be a useful reference for anyone needing to implement a custom integration

Apr 22, 20241h 16m

S1 Ep 7Skills Upgrade #7

Welcome back to "Skills Upgrade" a Talking Drupal mini-series following the journey of a D7 developer learning D10. This is episode 7. Topics Review Chad's goals for the previous week Test Example Set up phpunit.xml Start with FrontPageLinkTest.php Review Chad's questions In the testing_example module, the file "src/Controller/TestingExampleController.php" has a function for simpletestDescription(). Is this an outdated artifact that should have been removed at some point? The module itself doesn't appear to use Simpletest elsewhere and appears to only rely on PHPUnit. What do you recommend for the minimal code structure to include for any given test type? Is the Testing Example module an ideal model or are there other resources I should review? The testing reference from Selwyn was helpful. In the "FrontPageLinkDependenciesTest.php" setUp() function, the createContentType() function is called without specifying the type. Is that set somewhere else? I may have overlooked it. Nevermind—it's set using randomMachineName() in the createContentType() function. Is there anything extra or standard to write in tests for drupal.org? Tasks for the upcoming week Smart Date - Martin (maintainer) to review promptly, I've already chatted with him about it. Create a new functional test: "submit a range with an end time before the start and validate that an error is returned" Create an issue in the Smart Date queue and assign to yourself. Create an issue fork. Check out the issue fork locally. Write (and test) the test locally. Commit and push to the issue fork. Mark issue as "Needs review". Ask someone to review - if all looks good, the reviewer will mark as RBTC. Resources Chad's Drupal 10 Learning Curriclum & Journal Chad's Drupal 10 Learning Notes The Linux Foundation is offering a discount of 30% off e-learning courses, certifications and bundles with the code, all uppercase DRUPAL24 and that is good until June 5th https://training.linuxfoundation.org/certification-catalog/ Hosts AmyJune Hineline - @volkswagenchick Guests Chad Hester - chadkhester.com @chadkhest Mike Anello - DrupalEasy.com @ultimike

Apr 17, 202431 min

Talking Drupal #446 - Test Driven Development

Today we are talking about Test Driven Development, Why it's important, and How it improves development with guest Alexey Korepov. We'll also cover Test Helpers as our module of the week. For show notes visit: www.talkingDrupal.com/446 Topics What does the term Test Driven Development (TDD) mean Does Drupal make use of TDD What makes TDD different from other methods of Development Do you have to change your way of thinking What are some good resources to learn TDD Do you have any pointers for teams looking to get started Are certain kinds of projects better suited to TDD How have dev teams adapted to TDD Any advice on environment setup Any special tools Resources Open telemetry QA Engineer Kent Beck Test Driven Development: By Example Needs tests tag Local unit tests PHPUnit Guests Alexey Korepov - korepov.pro Murz Hosts Nic Laflin - nLighteneddevelopment.com nicxvan Martin Anderson-Clutz - mandclu Matt Glaman - mglaman.dev mglaman MOTW Correspondent Martin Anderson-Clutz - mandclu Brief description: Have you ever wanted an API that could dramatically simplify the process of writing Drupal unit tests? There's a module for that. Module name/project name: Test Helpers Brief history How old: created in Sep 2022 by today's guest, Alexey Korepov Versions available: 1.3.0 compatible with versions of Drupal 9.4 or newer, right up to Drupal 11 Maintainership Actively maintained, latest release less than 3 months ago Security coverage Test coverage, would be ironic if it didn't API Documentation is available, linked from the project page Number of open issues: 2 open issues, which are actually feature requests Usage stats: 5 sites officially, but modules or sites can leverage Test Helpers without enabling it, and this usage is recommended, so the number is actually higher Module features and usage Provides a new container that automated tests can leverage to perform common tasks with much less code. For example, you can create a user or a node with a single line of code You can also mock more complex operations like an entityQuery or loadMultiple call, again with a single line of code Traditionally, writing unit tests is more complicated because by design they run without fully bootstrapping Drupal That means that your test needs to mock functions or services in the code you're testing which can result in units tests being much longer than the code they're testing Test Helpers also allows your tests to leverage existing mocks and stubs for popular services The project page also links to the recording and slides for a talk Alexey gave about Test Helpers at DrupalCon Pittsburgh last year, if you want to do a deeper dive

Apr 15, 20241h 9m

S1 Ep 6Skills Upgrade #6

Welcome back to "Skills Upgrade" a Talking Drupal mini-series following the journey of a D7 developer learning D10. This is episode 6. Topics Review Chad's goals for the previous week Review Chad's questions Array structures accordion.html.twig D7 to D10 migrations Tasks for the upcoming week [testing_example](https://git.drupalcode.org/project/examples/-/tree/4.0.x/modules/testing_example? Be sure to install drupal/core-dev dependencies using composer require –dev drupal/core-devref_type=heads) from Examples module. Set up phpunit.xml file in project root - using this file to start Run existing tests using command line from the project root. Something like: phpunit web/modules/contrib/examples/modules/testing_example/tests Review test code in module. Start with FrontPageLinkTest.php, then FrontPageLinkDependenciesTest.php, then TestingExampleMenuTest.php Resources Understand Drupal - Migrations Chad's Drupal 10 Learning Curriclum & Journal Chad's Drupal 10 Learning Notes The Linux Foundation is offering a discount of 30% off e-learning courses, certifications and bundles with the code, all uppercase DRUPAL24 and that is good until June 5th https://training.linuxfoundation.org/certification-catalog/ Hosts AmyJune Hineline - @volkswagenchick Guests Chad Hester - chadkhester.com @chadkhest Mike Anello - DrupalEasy.com @ultimike

Apr 10, 202437 min

Talking Drupal #445 - Drupal Bounty Program

Today we are talking about The Drupal Bounty Program, How it supports innovation, and how you can get involved with guest Alex Moreno. We'll also cover WebProfiler as our module of the week. For show notes visit: www.talkingDrupal.com/445 Topics What is the Drupal Bounty program How and when did it start What issues and tasks are included Has the bounty program been successful Why was this program extended Do you see any drawbacks Can anyone participate How are issues for the second round being selected What do you see the future of the bounty program looking like Could this become like other bounty programs with cash Do you think the bounty program will help maintainers get sponsorship Resources Introducing The Bounty Program Bounty Program Extension Bjorn Talking Drupal #425 - Modernizing Drupal 10 Theme Development Guests Alejandro Moreno - alexmoreno.net alexmoreno Hosts Nic Laflin - nLighteneddevelopment.com nicxvan John Picozzi - epam.com johnpicozzi Matt Glaman - mglaman.dev mglaman MOTW Correspondent Martin Anderson-Clutz - mandclu Brief description: Have you ever wanted to get detailed performance data for the pages on your Drupal sites? There's a module for that. Module name/project name: WebProfiler Brief history How old: created in Jan 2014 by Luca Lusso of Italy who was a guest on the show in episode #425 Versions available: 10.1.5 which works with Drupal >=10.1.2 Maintainership Actively maintained, latest release on Feb 1 Security coverage Test coverage Not much in the way of documentation, but the module is largely a wrapper for the Symfony WebProfiler bundle, which has its own section in the Symfony documentation Number of open issues: 36 open issues, 13 of which are bugs Usage stats: 477 sites Module features and usage Once installed the module adds a toolbar to the bottom of your site, within which it will show a variety of data for every page: Route and Controller Memory usage Time to load (with some additional setup) Number of AJAX requests Number of queries run and the total query time Number of blocks visible How many forms are on the profile Lots of other detailed information available through links Reports are saved into the database, so you can dig through additional details such as: Request information like access metadata, cookies, session info, and server parameters, in addition to the request and response headers All of the queries that ran, how long each took, and even a quick way to create an EXPLAIN statement to get deeper insight from your database engine You can also view all the services available, and with a single click open the class file in the IDE of your choice A handy alternative to other performance monitoring tools like XHProf (either as Drupal module, or installed directly into your development environment), or commercial tools like Blackfire or New Relic Discussion Luca's book Modernizing Drupal 10 Theme Development actually provides a great deep dive into this module

Apr 8, 20241h 2m

S1 Ep 5Skills Upgrade #5

Welcome back to "Skills Upgrade" a Talking Drupal mini-series following the journey of a D7 developer learning D10. This is episode 5. Topics Review Chad's goals for the previous week .gitignore Field Example module Plugin API Drupaal 10 Masterclass book Review Chad's questions Field Example follow up Tasks for the upcoming week Examples module: js_example module js_example.libraries.yml hook_theme() implementation in js_example.module JsExampleController template files Resources .gitignore Drupal 10 Masterclass Modernizing Drupal 10 Theme Development Chad's Drupal 10 Learning Curriclum & Journal Chad's Drupal 10 Learning Notes The Linux Foundation is offering a discount of 30% off e-learning courses, certifications and bundles with the code, all uppercase DRUPAL24 and that is good until June 5th https://training.linuxfoundation.org/certification-catalog/ Hosts AmyJune Hineline - @volkswagenchick Guests Chad Hester - chadkhester.com @chadkhest Mike Anello - DrupalEasy.com @ultimike

Apr 3, 202434 min

Talking Drupal #444 - Design to Development Workflow Optimization

Today we are talking about design to development hand off, common complications, and ways to optimize your process with guest Crispin Bailey. We'll also cover Office Hours as our module of the week. For show notes visit: www.talkingDrupal.com/444 Topics Primary activities of the team Where does handoff start Handoff artifact Tools for collaboration Figma Evaluating new tools Challenges of developers and designers working together How can we optimize handoff What steps can the dev team take to facilitate smooth handoff Framework recommendation Final quality AI Guests Crispin Bailey - kalamuna.com crispinbailey Hosts Nic Laflin - nLighteneddevelopment.com nicxvan John Picozzi - epam.com johnpicozzi Anna Mykhailova - kalamuna.com amykhailova MOTW Correspondent Martin Anderson-Clutz - mandclu Brief description: Have you ever wanted to manage and display the hours of operation for a business on your Drupal site? There's a module for that Module name/project name: Office Hours Brief history How old: created in Jan 2008 by Ozeuss, though recent releases are by John Voskuilen of the Netherlands Versions available: 7.x-1.11 and 8.x-1.17 Maintainership Actively maintained, latest release was 3 weeks ago Security coverage Test coverage Documentation: no user guide, but a pretty extensive README Number of open issues: 15 open issues, only 1 of which are bugs against the current branch, though it's postponed for more info Usage stats: Almost 20,000 sites Module features and usage Previously covered in episode 113, more than 8 years ago, in the "Drupal 6 end of life" episode The module provides a specialized widget to set the hours for each weekday, with the option to have more than one time slot per day You can define exceptions, for example on stat holidays You can also define seasons, with a start and end date, during which the hours are different The module also offers a variety of options for formatting the output: You can show days as ranges, for example Monday to Friday, 9am to 5pm, 12-hour or 24-hour clocks, and so on Obviously it will show any exceptions or upcoming seasonal hours too It can also show an "open now" or "closed now" indicator It can create schema.org-compliant markup for openingHours, and has integration with the Schema.org Metatag module Office Hours does all this with a new field type, so you could add it to Stores in a Drupal Commerce site, a Locations content type in a site for a bricks-and-mortar chain, or if you just need a single set of hours for the site, you should be able to use it with something like the Config Pages module The README file also includes some suggestions on how to use Office Hours with Views, which can give you a lot of flexibility on where and how to show the information

Apr 1, 20241h 19m

Ep 4Skills Upgrade #4

Welcome back to "Skills Upgrade" a Talking Drupal mini-series following the journey of a D7 developer learning D10. This is episode 4. Topics Review Chad's goals for the previous week Install Drush Setup git repo Examples module Review Chad's questions .gitignore Core file naming Tasks for the upcoming week Reminder of the capstone goal: create MR for new automated test in contrib module. Examples module: field_example. New RGB field type with formatter and widgets. Focus on stuff in field_example/src/Plugin/Field Background info on Plugins: https://www.drupal.org/docs/drupal-apis/plugin-api Focus on the following sections: https://www.drupal.org/docs/drupal-apis/plugin-api/plugin-api-overview https://www.drupal.org/docs/drupal-apis/plugin-api/why-plugins https://www.drupal.org/docs/drupal-apis/plugin-api/annotations-based-plugins Resources Chad's Drupal 10 Learning Curriclum & Journal Chad's Drupal 10 Learning Notes The Linux Foundation is offering a discount of 30% off e-learning courses, certifications and bundles with the code, all uppercase DRUPAL24 and that is good until June 5th https://training.linuxfoundation.org/certification-catalog/ Hosts AmyJune Hineline - @volkswagenchick Guests Chad Hester - chadkhester.com @chadkhest Mike Anello - DrupalEasy.com @ultimike

Mar 27, 202450 min

Talking Drupal #443 - Violinist.io

Today we are talking about Violinist.io, Managing Composer Dependencies, and automation with guest Eirik Morland. We'll also cover Composer Patches as our module of the week. For show notes visit: www.talkingDrupal.com/443 Topics What is Violinist.io How does it work How much technical knowledge do you need Is this a security risk How much does it cost Patron question: Peter: Difference between violinist and dependabot What are the major differences in plans Who is the ideal user Can you self host Can this help with Drupal 11 readiness Complementary tools Notable users Why did you start this What is it like using Drupal for a SAAS Is it open source Pros and cons of open source for a SAAS How can the community support What is on the roadmap Resources Violinist.io Violinist on D.o Guests Eirik Morland - violinist.io eiriksm Hosts Nic Laflin - nLighteneddevelopment.com nicxvan Martin Anderson-Clutz - mandclu.com mandclu Anna Mykhailova - kalamuna.com amykhailova MOTW Correspondent Martin Anderson-Clutz - mandclu Brief description: Have you ever wanted a simple way to manage patches to Drupal core and your contrib projects? There's a composer plugin for that Module name/project name: https://github.com/cweagans/composer-patches Composer Patches Brief history How old:created in Apr 2015 by Cameron Weagans Versions available: 1.7.3 and 2.0.0-beta2 Maintainership Actively maintained, beta2 release was a little over a month ago Test coverage Has a documentation site, as well as a COMMANDS markdown file in the repo to help you get started Number of open issues: 10, 2 of which are bugs Usage stats: It's been installed over 42 million times and it's approaching 43 thousand installs per day, according to a recent blog post Module features and usage Using the plugin is simple, you require cweagans/composer-patches the same way you would a Drupal contrib project. The important difference is that composer will ask you if you trust composer-patches to make changes to your codebase. Once you grant that, the plugin is ready to start applying patches You can specify what patches you want applied by adding a patches section to the extra section of your project's composer.json file, or by adding a patches.json file Each patch can be specified using a URL or a path relative to the JSON file In theory it's possible to have composer patches pulled directly from the diff in a merge request, but this is a significant security risk and should always be avoided The first beta release for the 2.0 branch actually dropped support for dependency patch resolution, noting that it had become the source of most support requests. In the end the community made it clear that they would resist upgrading without this capability, so the most recent beta2 release adds it back in. Finally, on his website cweagans.net Cameron mentions that he's currently looking for full-time employment. So if your organization relies heavily on composer in general or composer-patches specifically, consider reaching out to him

Mar 25, 20241h 4m

Skills Upgrade #3

Welcome back to "Skills Upgrade" a Talking Drupal mini-series following the journey of a D7 developer learning D10. This is episode 3. Topics Review Chad's goals for the previous week DDEV performance improvements Install Drupal 10 Install drupal/core-dev Configure and test phpcs Test phpstan settings.local.php Install Devel module Review Chad's questions Rancher Desktop appears to be holding on to port 443 after I installed it. Although I changed the port to something else, do you have any suggestions to update the setup to use ports 443 and 80 instead? How are tools like phpcs and PHPStan used by the Drupal community for contrib? Are they a part of drupal.org's testing automation? Starting a new D10 website from scratch in DDEV is one thing … How would I typically work with an existing D10 website? Do I start with the community config, then overwrite the code, database, and files? Is there a better approach? Tasks for the upcoming week Install Drush using Composer Examples module https://drupal.org/project/examples routes/controllers/forms Review: https://www.drupal.org/docs/drupal-apis/routing-system/introductory-drupal-routes-and-controllers-example Go through the "Page example" module from the Examples module. Check back for "docker context use rancher-desktop" stuff. Create a new Git repository for your D10 site with Composer dependencies not committed to the repository. .gitignore stuff cp web/example.gitignore web/.gitignore Create ./.gitignore with: /vendor /web/core /web/modules/contrib/ /web/themes/contrib/ /web/profiles/contrib/ /web/libraries/ *.sql.gz Resources Chad's Drupal 10 Learning Curriclum & Journal Chad's Drupal 10 Learning Notes The Linux Foundation is offering a discount of 30% off e-learning courses, certifications and bundles with the code, all uppercase DRUPAL24 and that is good until June 5th https://training.linuxfoundation.org/certification-catalog/ Hosts AmyJune Hineline - @volkswagenchick Guests Chad Hester - chadkhester.com @chadkhest Mike Anello - DrupalEasy.com @ultimike

Mar 20, 202438 min

Talking Drupal #442 - Mercury Editor

Today we are talking about Mercury Editor, What it does, and how it could change your editorial life with guest Justin Toupin. We'll also cover Webform Protected Downloads as our module of the week. For show notes visit: www.talkingDrupal.com/442 Topics What is Mercury Editor What is powering Mercury Editor Do you see any risk building on top of Paragraphs Does Mercury Editor cost anything Can companies hire Aten to add features What are some key features What makes Mercury Editor unique How stable is the content What happens if Paragraphs stops being supported How can the community help Resources Mercury Editor Layout Paragraphs Episode Layout Paragraphs Paragraphs Library Sub-module of Paragraphs Style options Layout Paragraphs restrictions Guests Justin Toupin - atendesigngroup.com justin2pin Hosts Nic Laflin - nLighteneddevelopment.com nicxvan John Picozzi - epam.com johnpicozzi Anna Mykhailova - kalamuna.com amykhailova MOTW Correspondent Martin Anderson-Clutz - mandclu Brief description: Have you ever wanted to have downloadable content on your website, only available to visitors who have filled out a webform? There's a module for that. Module name/project name: Webform Protected Downloads Brief history How old: created in Sep 2010 by berliner, but the most recent releases are by james.williams of Computer Minds Versions available: 7.x-1.1 and 8.x-1.0-alpha2 versions available, the latter of which works with Drupal 9 and 10 Maintainership Actively maintained, the latest release was a week ago Security coverage Introductory blog linked on the project page Number of open issues: 18 open issues, none of which are bugs against the current branch Usage stats: 804 sites Module features and usage Having thought leadership content like white papers or reports gated behind a lead capture form is a common pattern for websites, and this module is designed to make that easy to set up You use the module by adding a handler to your webform, similar to triggering an email send In the configuration for your webform protected download handler you have options for how much verification you want for the download link, whether or not the link should expire after a period of time, and so on, in addition to uploading one or more files that can be downloaded by people who submit the webform The module provides tokens for the download URLs, so you can easily include them in a submission confirmation message or email

Mar 18, 20241h 9m

S1 Ep 2Skills Upgrade #2

Welcome back to "Skills Upgrade" a Talking Drupal mini-series following the journey of a D7 developer learning D10. This is episode 2. Topics Review Chad's goals for the previous week DDEV Installation Docker for Mac vs other options IDE Setup Review Chad's questions Tasks for the upcoming week DDEV improve performance Install Drupal 10 Install drupal/core dependencies Configure and test phpcs Test phpstan Set up settings.local.php Install devel module Resources DDEV Performance DDEV Quickstart Drupal Core Dependencies How to Implement Drupal Code Standards Running PHPStan On Drupal Custom Modules Why you should care about using settings.local.php Rancher Desktop Chad's Drupal 10 Learning Curriclum & Journal Chad's Drupal 10 Learning Notes Hosts AmyJune Hineline - @volkswagenchick Guests Chad Hester - chadkhester.com @chadkhest Mike Anello - DrupalEasy.com @ultimike

Mar 13, 202436 min

Talking Drupal #441 - CI for Drupal modules

Today we are talking about CI for Drupal modules, How it helps us build Drupal, and the ongoing work and improvements being made with guest Fran Garcia-Linares. We'll also cover Require on Publish as our module of the week. For show notes visit: www.talkingDrupal.com/441 Topics What does CI mean How do Drupal modules use CI When we talk about Drupal CI are we talking about the website itself or the CI that supports contributors What tools does Drupal use for CI How do maintainers interact with CI What changes have happened in the last year Speed improvements Drupal CI vs Gitlab CI Process to convert When is Drupal CI being shut down What improvements are coming If someone has an issue where do they get help Resources Gitlab templates module Gitlab CI Drupal Support ElasticSearch 8 [#3279558] | Drupal.org Slack channel for ci questions #gitlab DrupalCI and all patch testing will be turned off on July 1, 2024 | Drupal.org Testing a Drupal module | Basic module building tutorial: Lorem ipsum generator Gitlab CI getting started GitLab CI | Using GitLab to Contribute to Drupal WIP: Create a space to document how to customize each of the GitLab CI jobs [#3423238] | Drupal.org will generate https://project.pages.drupalcode.org/gitlab_templates/ We are pushing for a basic version to be fully live this week [Meta] Switching to Gitlab CI [#3424725] | Drupal.org Guests Fran Garcia-Linares - fjgarlin Hosts Nic Laflin - nLighteneddevelopment.com nicxvan Stephen Cross - stephencross.com stephencross Anna Mykhailova - kalamuna.com amykhailova MOTW Correspondent Martin Anderson-Clutz - mandclu Brief description: Have you ever wanted to have content fields that could be optional until a piece of content is published, or ready to be published? There's a module for that. Module name/project name: Require on Publish Brief history How old: created in Apr 2018 by Mike Priscella (mpriscella), though recent releases are by Mark Dorison (markdorison) of Chromatic Versions available: 8.x-1.10 Maintainership Actively maintained, latest release just over a month ago Security coverage Test coverage Number of open issues: 18, 8 of which are bugs Usage stats: 3,001 sites Module features and usage With this module enabled, form to configure fields for you content types will have a new checkbox labeled "Required on Publish" Check this new box instead of the normal "Required field" checkbox to have the field only required if the content is being published or already published Useful for publishing workflows where you want content creators to be able to quickly get started on content, but ensure that fields will be filled in before publishing Useful for fields that will optimize the content for SEO, social sharing, search, and so on

Mar 11, 20241h 14m

Skills Upgrade #1

This is the first episode of Skills Upgrade, a Talking Drupal mini-series following the journey of a Drupal 7 developer learning Drupal 10. Topics Chad and Mike's first meeting Chad's Background Chad's goals Tasks for the week Resources Chad's Drupal 10 Learning Curriclum & Journal Chad's Drupal 10 Learning Notes Hosts AmyJune Hineline - @volkswagenchick Guests Chad Hester - chadkhester.com @chadkhest Mike Anello - DrupalEasy.com @ultimike

Mar 6, 202429 min

Talking Drupal #440 - The Cost Of Drupal

Today we are talking about the cost around Drupal, common misconceptions, and how you get what you pay for with guest Jeff Robbins. We'll also cover Module Instructions as our module of the week. For show notes visit: www.talkingDrupal.com/440 Topics What is new! How did you get started with Drupal Selling Drupal and the cost How much is the technology vs the complexity of projects that lend themselves to Drupal Value of Drupal What can the Drupal community do to make it more widely attractive Versionless Drupal marketing Resources Drupal.org README.md Documentation Drupal versioning discussion Talking Drupal #390 - Employee Owned Companies Talking Drupal #429 - The Drupal Association Board Talking Drupal #439 - Drupal 7 Long-Term Support Visibox Jeff Robbins MySQL PHP Guests Jeff Robbins - jjeff.com jjeff 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 have easy access to the README, CHANGELOG, and INSTALL files for the contrib modules on your Drupal site? There's a module for that. Module name/project name: Module Instructions Brief history How old: created in Apr 2012 by Ales Rebec of Slovenia Versions available: 7.x-1.0 and 2.0.3 versions available, the latter of which works with Drupal 9 and 10 Maintainership Actively maintained? Security coverage Test coverage Number of open issues: 4 open issues, none of which are bugs against the 2.0.x branch Usage stats: 1,238 sites Maintainer(s): Current maintainer of the 2.0.x branch is Viktor Holovachek a.k.a Aston Victor of the Ukraine Drupal Community Module features and usage The usage of the module is pretty straightforward. Once the module is installed, anyone who has access to the Modules page on a Drupal site will see links on that page to any README, CHANGELOG, or INSTALL files that are available for the contrib modules in the codebase It also provides a cron job and drush command to generate the links, stored in the site state, so the application isn't doing all the work of parsing through all your contrib modules looking for the files every time someone wants to load the Modules page It does override the template for the module page to add those links, so be aware that if you're doing something very custom and have overridden that template in something like a custom admin theme, you may need to manually add some extra markup to see the links The module does also define new permissions, to manage the settings for these links, or to view them The settings really consist of specifying which of the links you want to appear, if the relevant files are available. By default it will show all three, but you could, for example, only have it show README links

Mar 4, 20241h 21m

Talking Drupal #439 - Drupal 7 Long-Term Support

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 herodevs.com Colorado Digital Service 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: Storybook 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.

Feb 26, 20241h 24m

Talking Drupal #438 - CKEditor 4 End of Life

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 CKEditor 4 End Of Life Contrib Core, prioritized upstream blockers Core, all issues blocked on upstream (currently 29), if we look just at bugs there's 17 (1 of which is critical, 6 major) Drastically improve the linking experience in CKEditor 5 Drupal Image ability to opt in to SVG image uploads Native and UX https://www.drupal.org/project/drupal/issues/3274635 Extended html filter Views / ckeditor custom elements 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: CKEditor 5 Premium Features 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

Feb 19, 20241h 15m

Talking Drupal #437 - Drupal Mail & Easy Email

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 Easy Email Module Symfony Mailer Lite Module Symfony Mailer Module Mail System Module hook_mail replacement issue Swiftmailer / Symfony mailer issue JMAP FastMail Free Easy Email Webinar 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: Content Access by Path 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

Feb 12, 20241h 16m

Talking Drupal #436 - Drupal & AI

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.

Feb 5, 20241h 12m

Talking Drupal #435 - UI Suite initiative

Today we are talking about web design and development, from a group of people with one thing in common… We love Drupal. This is episode #435 UI Suite initiative. For show notes visit: www.talkingDrupal.com/435 Topics Elevator Pitch What do you mean by implementing design systems Is this to thel themers or site builders What is the expected outcome The project page says initiative, but this is not on the community initiatives page, is this an intitiative How does this implement public design systems Does this work with Single Directory Components Youtube Channel Getting involved Roadmap Use cases Do you see this going into core Resources UI Suite Initiative UI Suite YouTube UI Suite Slack Guests Pierre Dureau - LinkedIn pdureau Hosts Nic Laflin - nLighteneddevelopment.com nicxvan John Picozzi - epam.com johnpicozzi MOTW Correspondent Chris Wells - chrisfromredfin Brief description: Have you ever wanted simple but accessible dropdown navigation on your Drupal website? There's a module for that. Module name/project name: Disclosure Menu Brief history How old: created in Nov 2022 by Jay Huskins of Redfin Solutions Versions available: 2.1.5 which works with Drupal 9 and 10 Maintainership Actively maintained, most recent commit is less than a month ago No Test coverage at this point Documentation - via README.md Number of open issues: 2, neither of which are bugs Usage stats: 29 sites Maintainer(s): Jay Huskins, with support from Redfin Module features and usage Provides a new menu block that includes markup for disclosure buttons, that make it easier for users on assistive devices to navigate drop-down menus Activating the button will toggle the visibility of nested menu items Also includes ARIA labels to provide clarity around what the buttons do Worth mentioning that Drupal's Olivero theme also includes disclosure buttons in its mWe'll also cover Disclosure Menu as our module of the week. Guest Introenus, but there isn't a straightforward way to pull the menus implemented there into your custom theme Also had a write-up in the Drupal advent calendar we talked about last month, so listeners can also check that out if they want more information

Jan 29, 20241h 13m

Talking Drupal #434 - Talking Drupal

Today we are talking about te show itself. We'll also cover Autosave Form as our module of the week. For show notes visit: www.talkingDrupal.com/434 Topics Update on the show Guest hosts MOTW Correspondent Newsletter Sponsorship Open Collective Content New content in 2024 Expanding team Resources Open Collective Hosts Nic Laflin - nLighteneddevelopment.com nicxvan John Picozzi - epam.com johnpicozzi Stephen Cross - stephencross.com stephencross MOTW Correspondent Martin Anderson-Clutz - mandclu Brief description: Have you ever wanted an autosave feature on your Drupal site's forms, so content creators won't lose their work if they accidentally close the window or lose power? There's a module for that. Module name/project name: Autosave Form Brief history How old: created in Nov 2016 by Hristo Chonov of 1x Internet, who is also one of the organizers of Drupal Dev Days 2024 in Burgas Versions available: 8.x-1.4 which works with Drupal 9 and 10 Maintainership Actively maintained, most recent comment less than 3 months ago Test coverage 38 open issues, 20 of which are bugs Usage stats: 6,414 sites Module features and usage Works by automatically saving the content of the current form every 60 seconds, though the time period is configurable When a user opens a form, if an autosaved state exists for that form a dialog will be shown asking if they want to resume editing or discard any autosaved states Once a form is submitted, any saved states will be automatically deleted Notionally it should work with both content entity forms and config forms, but the majority of development and testing has been with entity forms in mind The project page also mentions an issue with nested entity reference inline forms, and has links to relevant Drupal core issues Worth noting that this module uses AJAX to save the states to the Drupal database, separate from entity revisions If you want a solution that save form states into the browser's localStorage instead, you can check out the Save Form State module, using the jQuery Sisyphus plugin

Jan 22, 202452 min

Talking Drupal #433 - Drupal 10 Masterclass

Today we are talking about The Drupal 10 Masterclass book, How it's different from other Drupal books, and why you need it on your bookshelf with author Adam Bergstein. We'll also cover Dashboards as our module of the week. For show notes visit: www.talkingDrupal.com/433 Topics What is Drupal 10 Masterclass about Who is this book for Why did you write the book Can you explain the subtitle a bit How does this differ from other recent Drupal books Can you tell us about the authoring experience What can our listeners do to make this book a success Do you think you'll write another book Simplytest.me update Resources Drupal 10 Masterclass: Build responsive Drupal applications to deliver custom and extensible digital experiences to users Drupal 10 Development Cookbook by Matt Glaman and Kevin Quillen Modernizing Drupal 10 theme development by Luca Lusso Modern Drupal by Selwyn Polit Rachel Lawson Mike Herchel Guests Adam Bergstein - @n3rdstein Hosts Nic Laflin - nLighteneddevelopment.com nicxvan John Picozzi - epam.com johnpicozzi MOTW Correspondent Martin Anderson-Clutz - mandclu Brief description: Have you ever wanted to add a dashboard to your Drupal site, to provide at-a-glance information to editors? There's a module for that. Module name/project name: Dashboards with Layout Builder Brief history How old: created in Nov 2019 by Erik Seifert of 1x Internet Versions available: 2.0.8 and 2.1.6 versions available, the latter of which works with Drupal 9 and 10 Maintainership Actively maintained Test coverage 13 open issues, 5 of which are bugs on th 2.1.x branch Usage stats: 1,878 sites Module features and usage Allows for the creation of dashboards as exportable config entities, using Layout Builder to define the layout and placement of blocks It's possible to create unique dashboards per user Out of the box you get a number of dashboards components to embed views, show recent errors, display content from RSS feeds, and more Dashboard components are defined using a new plugin base, so you can also create custom components to meet the unique needs of your site The dashboards are also optimized for use with Gin, which isn't a surprise because 1x Internet is also a sponsor of the Gin admin theme. If your site is also using Gin then this module will provide a central dashboard that seamless integrate with the backend UI If you're looking to implement dashboards on your site, you can also look at Moderation Dashboard and Homebox as other options. The latter of those is even more widely used, but mostly by D7 sites. That said, drupal.org is one of those sites, so if your team is active on drupal.org then the interface will be very familiar There is also a Dashboard Initiative that has been started by some core maintainers, so using one of these modules can set you up to weigh in on what the ideal state for the initiative might look like

Jan 15, 20241h 8m

Talking Drupal #432 - Portals & Community Websites

Today we are talking about Portals, Community Websites, and Drupal with guest Ron Northcutt. We'll also cover Private Message as our module of the week. For show notes visit: www.talkingDrupal.com/432 Topics Why are you passionate about community sites Different types of portals you've worked on Common features Why is Drupal a great fit Why would you choose Drupal over a Saas or PaaS What is unique about each community How important is UX What common content models do you see Most important tip Resources Lego sorting https://news.lugnet.com/storage/?n=709 https://brickarchitect.com/guide/bricks/ PHPBB discourse Open Social Monday Guests Ron Northcutt - community.appsmith.com rlnorthcutt Hosts Nic Laflin - nLighteneddevelopment.com nicxvan John Picozzi - epam.com johnpicozzi Martin Anderson-Clutz - mandclu MOTW Correspondent Martin Anderson-Clutz - mandclu Module name/project name: Private Message Brief description: Have you ever wanted to include a full-fledged, ajaxified system for private messages between users on your Drupal site? There's a module for that Brief history How old: created in Apr 2017 by Jaypan, a fellow Canadian, but the most recent release is by Lucas Hedding, who hails from Nicaragua, and is a prolific contrib maintainer in his own right Versions available: 8.x-2.0-beta18 and 3.0.0 versions available, the latter of which works with D9 and 10 Maintainership Actively maintained, latest release in Oct 2023 Number of open issues: 130, 4 of which are bugs on the 3.0.x branch Test coverage Documentation: does have a handbook, though the pages seem to date back to 2017, so hopefully the installation and setup hasn't changed too much since then Usage stats: Almost 2,000 sites Maintainer(s): Module features and usage With the Private Message module installed, users on your site can have permissions-based access to send private messages to each other Messages and threads are fieldable entities, and in general the module is made to be highly configurable, so you can tailor it to meet your site's specific needs That includes the frequency for asynchronous operations like loading new messages, which can be done without a full page refresh. There's also a companion module to use Node.js for the asynchronous operations, to reduce load on both the browser and the server That also allows for browser push notifications, or you can use the integration with the Message module to send notifications via email, SMS, and more, including aggregating the notifications into digests Companies often have a dedicated messaging solution like Slack or Teams that they use internally, but this can be a good solution for an extranet or vendor portal, where the users may represent a variety of organizations It's also worth mentioning that both Private Message and Message are included in the Open Social distribution, so that could be a way to try out a preconfigured setup

Jan 8, 20241h 12m

Ep 43Talking Drupal #431 - Live at NEDCamp

Talking Drupal #431 - Live at NEDCamp On today's show we share interviews we conducted with sponsors, speakers and attendees at New England Drupal Camp in November. Seventeen in all. For show notes visit: www.talkingDrupal.com/431 Topics Interviews with: Michael Miles Nick Silverman Matt O'Bryant Ethan Aho Mike Anello Patrick Anderson Brian Perry Aubrey Sambor Brigitte Ayerves Valderas Chris Wells Richard Hood Chris Amato Ivan Stegic Philip Frilling Rod Martin Jacob Rockowitz Whitney Hess Hosts Nic Laflin - nLighteneddevelopment.com nicxvan John Picozzi - epam.com johnpicozzi Martin Anderson-Clutz - mandclu Stephen Cross - StephenCross.com

Jan 1, 20242h 29m

Talking Drupal #430 - Drupal in 2024

Today we are talking about Drupal in 2024, What we are looking forward to with Drupal 11, and the Drupal Advent Calendar with James Shields. We'll also cover Drupal 10.2 as our module of the week. For show notes visit: www.talkingDrupal.com/430 Topics Advent calendar Selection process Popularity Next year Drupal features in 2024 Drupal 11 Project browser Recipes / Starter templates Automated updates Gitlab Smaller core Predictions Resources Drupal Advent Calendar A Plan for Drupal 11 Drupal 10.2 announcement Change Records for 10.2.0 https://www.drupal.org/node/3395582 https://www.drupal.org/node/3395575 https://www.drupal.org/node/3369935 Dev Days Guests James Shields - lostcarpark.com lostcarpark Hosts Nic Laflin - nLighteneddevelopment.com nicxvan John Picozzi - epam.com johnpicozzi Martin Anderson-Clutz - mandclu Ron Northcutt - community.appsmith.com rlnorthcutt MOTW Correspondent Martin Anderson-Clutz - mandclu Drupal 10.2 Improvements include Technology Updates PHP 8.3 Includes capabilities that previously required contrib projects File name sanitization A search filter on the permissions page End Users Performance enhancements and improved caching APIs Support for PHP Fibers to accelerate handling things like asynchronous remote calls Content Creators Revision UI for media Wider editing area in Claro on large screens The return of "Show blocks" in CKEditor 5, missing until now Site Builders Field creation UI has a new, more visual interface, and an updated workflow Block visibility can now be based on the HTTP response status, for example to make it visible or invisible on 404 or 403 responses Tour module is no longer enabled by default for the Standard and Umami profiles New "negated regular expression" operator for views filters (string/integer), to exclude results matching a provided pattern Site Owners Announcements Feed is now stable and included in the Standard profile The functionality in the experimental Help Topics module has been merged into the main Help module, so the Help Topics module is now deprecated New permission: Use help pages Developers A fairly sizable change is a move to use native PHP attributes instead of doctrine annotations to declare metadata for plugin classes. Work is already underway to get core code converted, and an issue has been opened to have rector do this conversion for contrib projects A new DeprecationHelper::backwardsCompatibleCall() method to help write Drupal extensions that support multiple versions of core A PerformanceTestBase is now in core, to support automated testing of performance metrics A new #config_target property in ConfigFormBase to simplify creating configuration forms Symfony mailer is now a composer dependency of core New decimal primitive data type Expanded configuration validation, Symfony autowiring support, HTML5 output from the HTML utility class is now default, and more In addition to these and the features highlighted in the official announcement, there are three pages of change records for the 10.2.0 release, and we'll include a link to those in the show notes

Dec 25, 20231h 14m