drupal

Drupal Association blog: The Drupal Association Endorses the United Nations Open Source Principles

The United Nations Digital Technology Network has recently adopted a new set of Open Source Principles to promote collaboration and drive open source adoption within the UN and around the world. These principles position open source as the default approach for digital projects, encourage contributions back to the ecosystem, foster inclusion and community building, and much more.

The Drupal Association is proud to endorse these principles. As the non-profit organization that supports the Drupal project, already the standard technology platform for the United Nations’ web presence, we wholeheartedly believe that these principles will advance both digital sovereignty and the long-term sustainability of the open source ecosystem.

The UN Open Source Principles

  • Open by default: Making Open Source the standard approach for projects
  • Contribute back: Encouraging active participation in the Open Source ecosystem
  • Secure by design: Making security a priority in all software projects
  • Foster inclusive participation and community building: Enabling and facilitating diverse and inclusive contributions
  • Design for reusability: Designing projects to be interoperable across various platforms and ecosystems
  • Provide documentation: Providing thorough documentation for end-users, integrators and developers
  • RISE (recognize, incentivize, support and empower): Empowering individuals and communities to actively participate
  • Sustain and scale: Supporting the development of solutions that meet the evolving needs of the UN system and beyond.

In June 2023, the Drupal Association adopted its own Open Web Manifesto, which guides both our non-profit operations and the Drupal open source project. The manifesto is grounded in five core principles and three essential requirements.

The principles are that the open web: 

  1. is built on freedom: No permission is required to learn, build, or innovate. Anyone, anywhere, can contribute to its growth.
  2. is defined by decentralization: No single person or entity controls the open web.
  3. thrives on inclusion: Everyone, regardless of background, identity, ability, wealth, or status has a place on the open web as a user, creator, architect, or innovator.
  4. requires participation: It is a shared resource and a shared responsibility, sustained through collective effort.
  5. exists for empowerment: It is driven by humanity’s pursuit of knowledge, connection, and progress, and is strengthened by each individual’s right to choice, privacy, and security.

The requirements are that the open web must: 

  1. protect — not exploit — personal data and public discourse
  2. enable the next generation of innovators and entrepreneurs to compete
  3. be resilient to a changing world and not controlled by a select few. 

We believe the alignment between the Drupal Association’s Open Web Manifesto and the United Nations’s Open Source Principles is both strong and significant. As open source continues to power digital transformation globally, we look forward to a future where individuals, organizations, and governments invest in our digital public spaces with the same care and commitment as our physical ones.

MidCamp - Midwest Drupal Camp: There’s something for everyone at MidCamp 2025 - Book your training

There’s something for everyone at MidCamp 2025 - Book your training

MidCamp is just around the corner! Join us May 20–22 for three days of connection, collaboration, and innovation.

In addition to our full program, we have lots of awesome add on training options available for just $10.  All training sessions will take place Tuesday 2-5pm with two continuing on the Wednesday afternoon, it’s not to late to add to your ticket.Check out our extensive training opportunities

Using the Drupal AI Module 

Training Lead by: Chris Weber Software Engineer, Nerdery & Justin Keiser, Drupal Web Programmer, Academy of Model Aeronautics

AI is everywhere... including Drupal! The advances for site builders using AI are pretty amazing! This course will provide a solid overview of what's available right now in both Drupal 11 and DrupalCMS and where the AI module is going.

This will be a hands-on course (if you want to try for yourself) for both Drupal 11 and Drupal CMS. No AI experience necessary, however you will need a paid account with OpenAI (or another API provider) - we're starting from scratch!

Introduction to Agile and Git Workflows for Web Developers

Training Lead by: April Sides, Principal Software Engineer, Red Hat

Note this training will be 2 parts continuing on Wednesday at 1pm

Developing websites within a team is a very different experience than building a site alone or with one or two other developers.

This hands-on training aims to build surface-level understanding of Agile and Gitflow, two common web development workflows for teams, from a developer’s perspective. You’ll learn about tips and tools to get you started, as well as resources for deeper exploration.

Drupal CMS Preview

Training Lead by: Michael Anello, Drupal Trainer & Developer, DrupalEasy

Note this training will be 2 parts continuing on Wednesday at 1pm

Drupal CMS has the potential to reset the perception of Drupal and is arguably one of the most important projects undertaken by the Drupal community. Helping folks get a better understanding of Drupal CMS will help participants have a positive first impression, lead to informed word-of-mouth and help perceptions, and in turn increase adoption. The course will provide a hearty introduction to some of Drupal CMS' main functionality with highly hands-on demonstrations and exercises.

Franken Theme - Reverse engineering contributed themes

Training Lead by: Bernardo Martinez, Front-End Developer, Vaultes

Drupal has a large ecosystem of contributed and core themes. A lot of pieces can be reused and repurposed on custom themes. However, awareness about said themes and their quality of life improvements can at times be missed. Learning from different projects, this training will walk you through some scenarios and why those snippets, hooks, and modules, could come in handy.

Drupal Decoupled 

Training Lead by: Jesus Manuel Olivas CEO & Co-Founder, Octahedroid

Discover how the Drupal Decoupled project leverages modern frontend frameworks and GraphQL APIs to transform traditional Drupal setups into Decouple implementations.

This session will show you how you can use Drupal as an API-driven CMS to build digital experiences, offering practical insights into decoupled architectures.

Secure your place on a training

Stay in the Loop

Join the MidCamp Slack and some hang out with the community online. We will be making announcements there from time to time. Join us on our socials too (linked in the footer), we’re also on Bluesky and Mastodon.

Keep an eye on this space; we will be releasing more blog posts with hotel and travel options, fun social events, speaker announcements, and more!

eiriksm.dev: Drupal Deployment Confidence: I always Quadringentoheptapentacontuple-check my code before deploying

Introductory ramblings about the title (click to expand)

I wanted to make a little word play on the process I have observed many people have around updating their Drupal sites. People tend to say they don't have time or budget to have CI pipelines or tests, and instead what they do is they "double check" that everything looks ok in a staging environment. I never do that. Instead I have tests and a CI pipeline. For example. I just checked the builds of https://violinist.io, and it has 457 tests. So I went ahead and asked Chat GPT to help me a bit:

If I checked something twice I double checked. If I checked it 3 times I triple checked. 4 times quadruple checked. What would 457 times be then?

Chat GPT told me no one uses it like that, and that it's “grammatically tortured”. I was repeatedly advised against using it:

If you really wanted a made-up but linguistically inspired version:
"Quadringentoheptapentacontuple-checked" (457-checked)
quadringento = 400
hepta =7
pentaconta = 50 But again this is deep into nerdy satire territory, like something you'd read in a Douglas Adams or Terry Pratchett book.

OK, my trusty AI friend. I accept the warning, but being in nerdy satire territory does not sound too bad. So with that introductory explanation of the title out of the way. Let me proceed with helping people increase their Drupal deployment confidence.

My last post about documenting the amount of commits and numbers around automatically updating Drupal projects received a bit of feedback. Most were in the category of surprise or being impressed with the large number. Then I randomly stumbled upon someone discussing the article on LinkedIn.

Emmons Michael Patzer says:

I enjoy his points. would enjoy even more seeing all the project work flow updates he indicates he runs. Lift the hood off some of that magic for the rest of us…

There is an underlying complement there I guess I will take. But the workflows are anything but magic.

Well let's walk through it shall we. First I can list up the checks:

  1. composer install 
  2. composer validate
  3. phpcs
  4. phpstan 
  5. phpunit 
  6. behat
  7. site install 
  8. site schema
  9. clean repo check

In a couple short blog posts I will attempt to recreate this setup in the three major version control providers (GitHub, GitLab and Bitbucket) and let's see how magic it feels then?

The repository will be a simple Drupal site with a couple of contrib modules, and one custom module. The repos can be found here:

https://github.com/eiriksm/drupal-confidence
https://bitbucket.org/eirikmorland/drupal-confidence
https://gitlab.com/eiriksm/drupal-confidence

I'm going to finish this blog with an animated gif, supposedly being a result for the search term "Quadringentoheptapentacontuple"

eiriksm.dev: Drupal deployment confidence part 1: Composer install

This is part 1 of a series on having CI pipelines for your Drupal site, and building Drupal Deploy Confidence.

You might find it strange that the first part is about composer install. Or maybe you find it weird to mention at all, since all steps will inherently need to do this at some point. Well in that case I will point out that the goal here is to make sure no one has an excuse to not have a CI pipeline. And guess what? Having a pipeline that runs composer install is infinitely better than having no CI pipeline. You can imagine the feeling going from no checks to this for the first time?

Image removed.

We will get back to having composer install as parts of running tests and linting, but for now let's dwell a bit about what we have here and why. You see, composer as a dependency manager is a tool, and the tool will gladly do what you tell it to do. So if you (or a developer on your team) told it to upgrade all dependencies it would. In many cases that could be totally fine. But this could in fact also bump other requirements like PHP versions or PHP extensions. Awkwardly, a worst case outcome could in fact be that a deployment to the production environment went wrong, for example with a message like:

Composer detected issues in your platform: Your Composer dependencies require a PHP version “>= 8.3.0”.

There are several variations of that, plus other things that could go wrong.

So if you ever experienced that error, there is in fact a very simple solution: Add a pipeline to your project that mirrors your production PHP version, and simply have a test for composer install! Just like this article suggests.

Direct link to pipeline for Bitbucket: https://bitbucket.org/eirikmorland/drupal-confidence/src/part-1/bitbucket-pipelines.yml
Direct link to pipeline for GitLab: https://gitlab.com/eiriksm/drupal-confidence/-/blob/part-1/.gitlab-ci.yml?ref_type=heads
Direct link to pipeline for GitHub: https://github.com/eiriksm/drupal-confidence/blob/part-1/.github/workflows/test.yml

If this article means you went from no pipelines or tests to exactly one: Congratulations! Let's celebrate this with a gif from the times long before the times of composer.

Nonprofit Drupal posts: May Drupal for Nonprofits Chat

Join us THURSDAY, May 15 at 1pm ET / 10am PT, for our regularly scheduled call to chat about all things Drupal and nonprofits. (Convert to your local time zone.)

We don't have anything specific on the agenda this month, so we'll have plenty of time to discuss anything that's on our minds at the intersection of Drupal and nonprofits.  Got something specific you want to talk about? Feel free to share ahead of time in our collaborative Google doc: https://nten.org/drupal/notes!

All nonprofit Drupal devs and users, regardless of experience level, are always welcome on this call.

This free call is sponsored by NTEN.org and open to everyone. 

  • Join the call: https://us02web.zoom.us/j/81817469653

    • Meeting ID: 818 1746 9653
      Passcode: 551681

    • One tap mobile:
      +16699006833,,81817469653# US (San Jose)
      +13462487799,,81817469653# US (Houston)

    • Dial by your location:
      +1 669 900 6833 US (San Jose)
      +1 346 248 7799 US (Houston)
      +1 253 215 8782 US (Tacoma)
      +1 929 205 6099 US (New York)
      +1 301 715 8592 US (Washington DC)
      +1 312 626 6799 US (Chicago)

    • Find your local number: https://us02web.zoom.us/u/kpV1o65N

  • Follow along on Google Docs: https://nten.org/drupal/notes

View notes of previous months' calls.

Golems GABB: AI framework in Drupal

AI framework in Drupal Editor Tue, 05/13/2025 - 11:15

Today, Drupal is truly one of the top and most powerful CMS. The introduction of AI and the new features to Drupal reveal its capabilities and incredible prospects for business owners. All these advancements also significantly change the approach to web development and website optimization on the already popular Drupal platform. That is why today, we will discuss the topic of the AI ​​framework in Drupal together.

PreviousNext: Three features for creating a great website experience

Over the past few years of working on large-scale Drupal projects for government and higher education, I have noticed how successful these new platforms are when developers include three key features in shaping the tech stack.

by ana.beltran / 13 May 2025

Rather than diving into the technical details, I want to share my thoughts on why these are essential tools for end-users and editors who manage content daily.

Image removed.Storybook was used on both the Cancer Australia and Catholic Schools NSW websites.

1. Storybook – Uplifting Documentation 

As a Delivery Manager, I’ve experienced the importance of having clear and accessible documentation in a project. Storybook is an open-source feature that allows teams to build and showcase components in isolation, making it easier to document and test for stakeholders. From my perspective, it is an excellent tool for stakeholders for the following reasons: 

  • Component Library - It works like an always-up-to-date document. Each component is documented separately, and its behaviour and variations are well explained. This makes it easier for content editors to browse and understand the behaviours of different components.
  • Trial before use (Experimenting) - Developers and stakeholders can interact with each component in isolation, allowing content editors to select the right component to fit the content, which is ideal for the end-user experience. Storybook also enables content editors to test how components display on various screen sizes, facilitating the testing process of multiple devices. 
Image removed.Layout Builder components are used on the PreviousNext website.

2. Layout Builder – Flexibility and Future-Proofing

Layout Builder is a game-changer for content editors. It works like building blocks. Editors drag and drop component blocks in the design system to fit with the content on a page. This feature allows editors to create and customise page layouts in the website without being locked to just a few pre-built templates. From my experience, it is a useful tool for organisations and users because it is: 

  • Flexible - It gives content editors and admins more control over how content looks without needing a developer, so content management is faster. Users also benefit as content is better structured, which leads to more engagement and a better experience.
  • Future proof - It supports scalability by allowing new components and features to be added over time. It ensures the website stays fresh without requiring a full redesign. In large organisations like universities and government departments, where content is constantly evolving, this level of control is unique and necessary.

Check out the work we’ve done for Cancer Australia using Layout Builder, Storybook and OpenSearch.

Image removed.OpenSearch was used on the Cancer Australia website.

Search is a critical feature for any large-scale website. It helps organisations give users the best experience by ensuring they can quickly find the right information. So, what is the difference between an out-of-the-box search and OpenSearch? Think of an out-of-the-box search as looking for a book in a bookstore. You might easily find it if you have the title and author, so simple queries will lead you to the source. However, trying to find the best cycling route in a new town is an entirely different task. You’re not just after a title ‘keyword’ but a few additional parameters or ‘filters’ like distance, elevation and terrain. That type of customisation is exactly what OpenSearch offers. It understands the website’s content structure and the users’ queries, and returns the best content match. It's a powerful tool from a stakeholder perspective, because it:

  • Organises information - Organisations can customise search results based on their needs. For example, they can rank articles higher than factsheets to prioritise the most critical content to appear first.
  • Understands how people search - No two users search for information in the same way. Some use keywords, while others use complete sentences. OpenSearch supports these various behaviours by providing functionality such as autocomplete, synonyms, and spell check. This will ensure users find what they are looking for, even if they use misspelled words or incomplete sentences. 

While these are only a few key tools for elevating the user experience, I hope this blog has helped you understand more about some of the tools we use and why I consider them to be the backbone of all new projects. If you have any questions or would like a demonstration of how we can use them in your new website, please feel free to reach out!