Feed aggregator

The Drop Times: 30 Drupal AI Framework and Integration Modules You Should Know

Drupal Planet -

AI is rapidly becoming a core capability in Drupal, and this curated list from The DropTimes highlights over 30 modules that enable deep integration with services like OpenAI, Google, AWS, and more. These modules go beyond basic API calls to support complex workflows, local model deployment, content automation, and advanced user experiences—all within Drupal’s native framework. Whether you're building chatbots, streamlining translation, or orchestrating large language models, these tools show how Drupal is evolving to meet the demands of the AI-powered web.

DrupalEasy: Method for cloning and working on Drupal contrib projects

Drupal Planet -

I enjoy keeping my Drupal development skills sharp. One of the ways I do this is through code contributions in various contrib projects like Markdown Easy and Smart Trim . In this quicktip, I'll show you what my typical workflow is when working on a code contribution. Often, working on issue forks and merge requests requires a local copy of the project's Git repository. If the project you're working on doesn't have any Composer dependencies, then the process is generally very straight-forward; just clone the project directly into your web/modules/contrib/ (or similar) directory and you're good-to-go. But, if it does have Composer dependencies, cloning it into the modules/contrib/ directory won't trigger Composer to install dependencies. In this case, I: Create a project-root modules directory. Clone the contrib project into the new modules directory. Modify the composer.json's repositories section as follows: "repositories": { "0": { "type": "path", "url": "./modules/*" }, "1": { "type

Dripyard Premium Drupal Themes: The most commonly used ARIA attributes on Drupal sites

Drupal Planet -

You’ve probably heard, “The first rule of ARIA is don’t use ARIA". This is a tongue-in-cheek reference to the movie Fight Club, but the reality is more nuanced. The real rule is: “Don’t use ARIA, unless you need to.” The TLDR: lean on native HTML whenever possible, but when HTML alone isn’t enough, ARIA fills the gaps. So when do we reach for ARIA in Drupal theming?

In this article, we’ll walk through some of the most common ARIA attributes you’ll encounter when building Drupal sites.

What is ARIA?

ARIA (Accessible Rich Internet Applications) is a set of HTML attributes that give assistive technologies (like screen readers) more context about elements.

For example, ARIA can:

The Vardot Team: Dependency Injection in Drupal

Drupal Planet -

Dependency Injection (DI) is a fundamental design pattern in object-oriented programming. Instead of having a class create its own dependencies, DI supplies them from the outside. This approach keeps classes loosely coupled and easier to maintain and test. By separating classes from the responsibility of creating their dependencies, we promotes flexibility, scalability, and cleaner architecture.

UI Suite Initiative website: UI Suite Monthly #18 - Major Reorganization and UI Patterns 2 Reaches 80% Completion

Drupal Planet -

Overall SummaryOur June monthly meeting brought exciting transformational news for the UI Suite ecosystem. We're implementing a major reorganization strategy that will introduce a meta package while maintaining all existing modules as separate, optional components. This change aims to provide both flexibility for individual module users and convenience for those wanting the complete UI Suite experience through a single installation command.

Dripyard Premium Drupal Themes: Now is the time for premium Drupal themes

Drupal Planet -

Ask anyone about Drupal’s strengths, and they’ll talk about content modeling: custom content types, views, workflows, and permissions that can be built entirely through the UI. No other CMS matches Drupal’s flexibility for complex information architectures.

But once the backend is in place, you still need to make it usable and beautiful for real people. And that’s where things get hard.

Drupal theming is expensive.

Theming in Drupal has historically been expensive and complex. Unlike WordPress or Webflow, you can’t just drop in a template and go. A proper Drupal theme requires specialized knowledge of:

UI Suite Initiative website: UI Suite Monthly #27 - From Components to Core Integration

Drupal Planet -

Overall SummaryOur May 2025 UI Suite community meeting brought together 20 passionate developers and contributors to discuss the exciting progress we're making toward transforming Drupal into the first design system native CMS. We celebrated significant milestones, including Pierre's promotion to provisional front-end framework manager, and showcased groundbreaking work on form API integration with Single Directory Components (SDC). The meeting highlighted our ambitious two-year roadmap and demonstrated how we're revolutionizing the way developers build and manage design systems in Drupal.With major releases on the horizon and innovative features like component-driven form elements becoming reality, we're witnessing a pivotal moment in Drupal's evolution. Our community continues to grow, and the momentum behind our initiatives shows no signs of slowing down.

UI Suite Initiative website: UI Suite Monthly #26 - Building the Future of Drupal Design Systems

Drupal Planet -

Overall SummaryOur latest monthly meeting showcased the incredible momentum we're building across the UI Suite ecosystem. With 18-20 participants from both sides of the Atlantic, we celebrated Jean's promotion to core maintainer for SDC and Icon APIs while diving deep into groundbreaking developments that are reshaping how we approach design systems in Drupal.The session highlighted two years and a half of consistent progress, featuring live demonstrations of revolutionary tools like UI Patterns UI for simplified component management, UI Patterns Field for content entity integration, and our ambitious new Display Builder that promises to transform how we create layouts. From experimental form API integrations to major theme releases reaching beta status, we're seeing our vision of a unified design system approach becoming reality.

UI Suite Initiative website: UI Suite Monthly #24 - Design System Revolution Takes Shape in Drupal

Drupal Planet -

Overall SummaryWe're thrilled to share the exciting developments from our latest UI Suite monthly meeting, where we celebrated major milestones and outlined our ambitious roadmap ahead. After eight years of dedicated work and five years since UI Suite 1, we're finally witnessing UI Suite 2 taking concrete shape with the imminent release of UI Patterns 2.0.0 stable.

UI Suite Initiative website: UI Suite Monthly #23 - Wrapping Up a Milestone Year and Building Toward UI Suite 2.0

Drupal Planet -

Overall SummaryOur final monthly meeting of 2024 marked the end of what can only be described as a transformative year for the UI Suite initiative. We've reached significant milestones across all five modules that comprise our complete design system implementation for Drupal, with UI Patterns 2.0 approaching its stable release and the entire ecosystem evolving toward a more mature, component-based architecture.

UI Suite Initiative website: UI Suite Monthly #22 - Major Transitions and Exciting Developments Ahead

Drupal Planet -

Overall SummaryOur 22nd monthly UI Suite meeting brought together community members for an exciting update on the ecosystem's evolution. This session focused heavily on transitions and new developments, with UI Patterns 2 taking center stage as the official version while layout options are being phased out. We're experiencing significant momentum across our entire suite of tools, with multiple modules preparing new branches compatible with UI Patterns 2 and the upcoming UI Icons integration into Drupal core.

UI Suite Initiative website: UI Suite Monthly #21 - Major Milestones and Strategic Transitions Ahead

Drupal Planet -

Overall SummaryOur 21st monthly meeting marked a significant milestone in the UI Suite Initiative's journey. After two years since starting in October 2022, we've officially transitioned from the legacy UI Suite module to promoting UI Patterns 2 as our flagship solution. This meeting highlighted our growing momentum with around 50 UI Patterns 2 users and our position as the second most popular SDC module on Drupal.org.

UI Suite Initiative website: UI Suite Monthly #20 - Two Years of Progress and Major Milestone Releases

Drupal Planet -

Overall SummaryOur 20th monthly meeting marked a significant milestone for the UI Suite Initiative - celebrating two full years of consistent community engagement and progress. This meeting showcased substantial achievements across our entire ecosystem, with major releases and exciting new developments that demonstrate our maturation as a comprehensive design system solution for Drupal.

Joachim's blog: The big plugin attribute change-over made easy

Drupal Planet -

The big plugin attribute change-over made easy

Attributes are here and they're great. I hated annotations; they were a necessary evil, but putting working code into comments just felt wrong.

But the conversion work is still ongoing: many contrib modules (and perhaps custom ones too) need to convert their plugin types to being attribute-based. There is time to do this: code in \Drupal\Core\Plugin\Discovery\AttributeDiscoveryWithAnnotations announces that attributes on plugins are required from Drupal 12, with the old-style annotation allowed to remain alongside it for backwards-compatibility until Drupal 13.

But the sooner you convert plugin types to attributes, the sooner you benefit from imported classes in definition values, the ability to put comments within the annotation, cleaner translation of labels, and use of PHP constants in attribute keys or values. And IDE autocompletion of the plugin definition keys, if you're not using Module Builder to generate your plugins (why, though? why?).

With Drupal Rector you can convert individual plugins from annotation to attribute, but to convert a plugin type, you need more than that.

Module Builder can help with this with its Adoption feature. This adds items to your module config based on the existing code, which allows you to alter or add to the code definition before re-generating it. (This feature is particularly useful for adding further injected services to an existing class such as a plugin or a form.)

Release 4.5.4 of Drupal Code Builder (the library that powers Module Builder) added adoption of plugin types, and this opens the door to converting a plugin type from annotation to attribute. The steps are are follows:

  1. Go to Administration › Configuration › Development › Module Builder.
  2. If your module is not already defined in Module Builder, click 'Adopt existing module', then find your module in the list and click 'Adopt module and adopt components'. If you already have the module in Module Builder, go to your module's 'Adopt' tab.
  3. On the adopt components form, select the plugin types you want to convert.
  4. Click 'Adopt components'.
  5. Go to the 'Plugins' tab of your module. Your plugin types should be in the form.
  6. Change the discovery type of each one to 'Attribute plugin'. The values will carry across (this is actually a problem with FormAPI that I've never managed to figure out, but it's actually quite handy).
  7. Go to the Generate tab.
  8. Select the files to write. For each plugin type, you'll want the plugin manager, and the new attribute class.

You should verify the new attribute class. Properties will have been adapted from the annotation class but they may not all be correct. In particular, default values for optional properties aren't yet handled by Module Builder, so you'll need to add those.

Once you've tidied up the attribute class, your plugin type is now attribute-enabled. (You should run the tests that cover plugins just to make sure everything is fine.)

The plugins of this type in your module are still using annotations, so now we turn to Rector.

There is full documentation on converting plugins but the gist of it is this:

$rectorConfig->ruleWithConfiguration(\DrupalRector\Drupal10\Rector\Deprecation\AnnotationToAttributeRector::class, [ new \DrupalRector\Drupal10\Rector\ValueObject\AnnotationToAttributeConfiguration( '10.0.0', '10.0.0', 'MyPluginType', 'Drupal\my_module\Attribute\MyPluginType', ), ]);

Run rector on just your plugin folders to make it go quicker, since you know where the plugin files are:

vendor/bin/rector process path/to/module/src/Plugin/MyPluginType

That converts all the annotations, but unfortunately, it doesn't format them properly: the whole thing ends up all on one line. And PHPCS and PHPCBF don't know how to format an attribute either.

But regular expressions come to the rescue, and fortunately the syntax of attributes is fairly distinct.

In your IDE, a search of '(?=\b\w+: )' replaced with '\n ' (note two spaces, for the indent) will put each property onto its own line. It won't handle array values though. And beware: it will catch the use of colons in text strings! This is an instance where using a GUI for git makes quick work: stage the fixes to the attributes, discard everything else.

That leaves just the terminal closing bracket, which you can do by hand, or cook up a regex if you have a lot of plugin classes.

joachim Tue, 02/09/2025 - 13:17 Tags

DrupalCon News & Updates: DrupalCon Vienna 2025: Top 5 Technical Reasons to Attend

Drupal Planet -

Image

DrupalCon Barcelona 2024 by Bram Driesen

Ready for a truly technical deep-dive? At DrupalCon Vienna 2025, you’ll gain insights from cutting-edge sessions, hands-on workshops, and direct interaction with the maintainers shaping Drupal’s future. Here are the top five technical reasons you can’t miss this year:

1. Shape the Future with Drupal Canvas

Drupal Canvas debuts at DrupalCon Vienna with the session "Drupal Canvas Unleashed: The Future of Drupal is Here" by Lauri Timmanee and Bálint Kléri. This session unveils the production-ready Drupal Canvas and shows how it transforms Drupal site-building through a component-driven, in-browser development workflow. Learn how to:

  • Kick-start new sites with faster, more collaborative builds
  • Leverage UI-embedded code and reusable components for efficiency
  • Incorporate existing modules into this modern architecture

 

2. Maximize Performance with DevOps and Network-Level Enhancements

Don’t miss "TCP Fast Open and HTTP/3: Network-Level Optimizations for Lightning-Fast Drupal" by Nicolas Perussel, where you'll dive into advanced networking techniques that can dramatically reduce latency and improve load times. Combine that with "Secure by Design: Integrating Security into Drupal Development" by Janna Malikova — learn how to bake essential security practices into every step of your build and deployment pipeline. This combo gives your projects real-world robustness and performance.

 

3. Explore AI-Powered Workflows and Multibrand Architecture

DrupalCon Vienna spotlights enterprise innovation through sessions like "Drupal AI – Strategy and Application" by Christoph Breidert and Frederik Wouters, and "Nestlé Nutrition Scalable Multibrand Design System on Drupal" by Olga Tsiamliak and Bastien Chanot. Get inside:

  • Strategic approaches to applying AI workflows in Drupal projects
  • Modeling large-scale, flexible design systems in a multisite environment
  • The role of AI-driven automation in enhancing editorial and marketing efficiency

 

4. Hands-on Learning Through Contribution, Workshops & Labs

With over 100 expert-led sessions, plus workshops and a dedicated Contributor Day, DrupalCon Vienna isn’t just about inspiration. It's about execution. Participate in:

  • Code labs that walk through module development, debugging, and API integration
  • Workshops on CI/CD flows, configuration management, and production optimization
  • Live contribution opportunities where you can get real code reviewed and merged
     This immersive, practical environment helps you bring new skills directly into your projects.

 

5. Gain Vision Through Keynotes and Future-Focused Talks

DrupalCon Vienna features four keynote presentations, including the Driesnote by Drupal founder Dries Buytaert, plus forward-looking panels such as "The Web in 2035" and "Drupal CMS Spotlights". These sessions offer:

  • Strategic insights into Drupal’s evolution and roadmap
  • Speculative discussions about the future of open web technologies
  • Inspiration for how Drupal can lead next-generation digital experiences
Why It Matters
  • Track-based learning: With seven technical tracks — from Drupal CMS and InfoSec & DevOps to Clients & Industry Experiences — you can dive deeply into the areas most relevant to your role and interest.
  • Strategic immersion: Whether you're refining DevOps pipelines, architecting large-scale builds, or integrating AI into workflows, DrupalCon Vienna gives you actionable knowledge to level up your projects.

Ready to be at the forefront of Drupal innovation?
Prepare your personalized agenda, explore new sessions, and let DrupalCon Vienna 2025 be the turning point in your Drupal journey.

Stay Tuned!

So bookmark this space, and get ready to experience DrupalCon Vienna 2025 like never before.

Are you coming? Let’s connect!

By Iwantha Lekamge

Technical Lead
WSO2

DrupalEasy: Reclaim Docker disk space when using DDEV

Drupal Planet -

If you've been using DDEV for a while (like me!) then you've probably run into the issue of your Docker disk space allocation getting full. I use Rancher Desktop and more than a few times I've received warnings that more than 95% of the 100GB I have allocated is full. Being a bit naive, I normally react by backing up a few projects I'm not regularly using and then doing a ddev delete on them. The most recent time, however, I decided to take a different approach. At the time, I didn't think I had all that many active DDEV projects (relative to my normal situation) so I did a little digging and learned that Mutagen (included by default with DDEV) cache files can take up quite a bit of space. So, instead of using ddev delete on a bunch of projects, I used: ddev mutagen reset on four of my most recently used projects and the issue went away without me having to delete any of my DDEV projects. In a conversation with Randy Fay, one of the maintainers of the DDEV project, he mentioned that he

Pages

Subscribe to www.hazelbecker.com aggregator