
19 Mar 2026
Drupal.org aggregator
Four Kitchens: The browser has grown up. Have we?
By Mari Núñez and Andrés Díaz Soto
If you study computer science or web development, you'll take an introductory JavaScript course. Everyone starts in a similar place: variables, let and const (or var if you're old enough), maybe even a conversation about the difference. You write a few functions, do some math, and concatenate some strings. It feels like learning a language in the abstract - technically correct, but removed from real work.
Before long, you are manipulating a web page. You grab an element, change its content, add a class, and attach a click handler. The browser responds. The page changes. It finally feels tangible.
But even then, JavaScript can feel like a layer you add on top rather than the foundation of the experience itself. And almost inevitably, you move to a library or framework. For many of us, that once meant jQuery.
Abstraction solved real problems
jQuery did not become dominant because developers were lazy. It solved real problems. Browsers were fragmented. There was no consistent way to select elements from the DOM. Event handling varied. AJAX required wrestling with verbose XMLHttpRequest code and awkward callback patterns. jQuery unified those concerns behind a clean, approachable interface: the dollar sign selector, the on method, simple get and post helpers, animations like fadeIn and slideUp.
It was a necessary abstraction at the time.
Over the years, though, the platform evolved. Browsers standardized. APIs matured. ES6 modernized the language. CSS grew far more capable. Many of the problems jQuery once addressed were absorbed directly into the browser.
The platform changed.
When thoughtful choices become defaults
We may be living through a similar moment with modern frameworks. React and other tools solve meaningful problems. They help teams move quickly and provide structure, especially for developers early in their careers. In many cases, they are exactly the right choice.
But over time, thoughtful decisions can quietly become defaults. A subtle assumption can creep in: if something feels modern or interactive, it probably requires a framework.
The shift is not dramatic. It is behavioral. Instead of beginning with the problem, we sometimes begin with the stack. If an interaction feels dynamic or app-like, we assume it needs something larger.
Frameworks offer guardrails and shared patterns, and that consistency is valuable. But when the tool becomes the starting point for every conversation, it can narrow the range of options we consider. We stop asking what the browser already provides. We begin to treat complexity as the baseline for modern work.
This is not bad architecture.It is often just unexamined architecture.
It shows up in small ways: adding a dependency before exploring a native API, reaching for a heavy client-side solution when progressive enhancement might be enough, and introducing new tooling because that is what modern projects tend to do. Each decision is understandable on its own. Over time, though, they expand the surface area of a project: more dependencies, more upgrades, more maintenance. Fewer dependencies can mean fewer upgrades to manage, fewer compatibility conflicts, and a smaller maintenance surface over time.
The foundation is stronger than we remember
While we have been refining our build pipelines and debating frameworks, the browser has continued to evolve. Quietly and steadily. Modern JavaScript is not what it was 10 or even five years ago. Today's browsers ship with stable, well-documented APIs that address many of the use cases we once handled with libraries.
Need to know when something enters the viewport? There is Intersection Observer.
Need to react to changes in the DOM without polling? Mutation Observer is built in.
Need to respond to screen size changes? MatchMedia handles that cleanly.
Need to persist data between sessions? Local storage is there.
Need to integrate with a device's native share dialog? There is an API for that.
CSS has evolved as well. Layout systems, transitions, scroll behaviors, and positioning features eliminate entire categories of JavaScript we once considered unavoidable.
And the language itself has matured. Modules, promises, async and await, richer array methods, cleaner syntax. These are no longer experimental features. They are part of the platform.
None of this is particularly flashy. It is simply what the browser now provides.
The hard part is not writing JavaScript. It is knowing what exists.
The important point is not that every project should avoid frameworks. It is that many of the problems we once solved with external libraries now have first-class support in the browser itself. So, what does that mean in practice?
Add one small pause to your workflow. Before installing a dependency, check the platform. Search MDN. Look up "browser API for…" and see what comes back. You might discover that Intersection Observer replaces the scroll library you were about to add. Or that CSS handles the animation without JavaScript at all.
It means reframing how you evaluate tradeoffs. When a feature request comes in, write down the requirement in plain language before you write down the stack. What actually needs to happen? A modal opens. Content animates on scroll. State persists between visits. Once the behavior is clear, ask whether the browser can already do it.
It means keeping a short list of native capabilities in your mental toolkit: MatchMedia. Local storage. Native form validation. ResizeObserver. The goal is not to memorize every API. It is important to remember that vanilla JavaScript is an option.
It also means normalizing this conversation on your team. When someone suggests a new library, ask a simple question: is there a native way to do this? Not as a challenge. As due diligence.
None of this requires abandoning modern tooling. It simply widens your decision tree. And it costs almost nothing but attention.
Join us at DrupalCon Chicago
In our session, "Elevating Drupal Experiences with Vanilla JavaScript," we'll share how we've used modern browser capabilities to build rich, interactive experiences within Drupal - not by rejecting frameworks, but by pairing Drupal's strengths with what the browser already does well.
We'll walk through:
- Where native APIs replaced heavier dependencies
- Where progressive enhancement simplified complexity
- Where we had to rethink our own assumptions
More than anything, we hope it sparks a conversation.
If you go
If you're going to DrupalCon Chicago 2026, please make sure to attend the session with Mari and Andrés.
Where: Hilton Chicago, 720 S. Michigan Ave., Chicago, IL 60605, Salon A-2 (LL)
When: Tuesday, March 24, 2026, 4:10-5:00pm
The post The browser has grown up. Have we? appeared first on Four Kitchens.
19 Mar 2026 9:12pm GMT
CodeLift: Building a Drupal contrib module with AI-assisted TDD
Three complete rewrites with three AI coding tools over 14 months. Each rewrite passed the same test suite. The spec and the tests are not interchangeable. The AI tool is.
19 Mar 2026 3:27pm GMT
Smartbees: Integrating Forms With an External Database
Discover how we improved form handling and submission to the client's system.
19 Mar 2026 12:33pm GMT
Darren Oh: Undocumented trick to make Composer copy a local package repository
Undocumented trick to make Composer copy a local package repository
I needed to test a Drupal module I was working on in a Docker container. The code was not in a location accessible to Docker. I tried to use Composer to copy it over. This would have worked if the code contained a composer.json file. I could have used a Composer path repository with symlink set to false. But it did not contain a composer.json file, so I had to use a Composer package repository. Composer kept symlinking instead of copying.
Darren Oh
19 Mar 2026 11:17am GMT
The Drop Times: Accessibility Beyond Compliance for Government and University Platforms
As accessibility deadlines approach, a DrupalCon Chicago 2026 session examines how government and university teams can move beyond compliance-driven approaches and integrate accessibility into design, development, and content workflows. Drawing on real project experience, the session positions accessibility as an ongoing practice shaped by systems, not a final checkpoint.
19 Mar 2026 10:35am GMT
18 Mar 2026
Drupal.org aggregator
The Drop Times: Designing for Difference: Practical Strategies for Building a Neuroinclusive Organization
Matthew Saunders will present a talk on neuro-inclusive system design at DrupalCon Chicago 2026, focusing on how organisational structures create friction for neurodivergent individuals. The presentation outlines practical changes to hiring, team operations, and leadership practices, positioning neuroinclusion as a systems-level design problem rather than a policy concern.
18 Mar 2026 2:46pm GMT
Nonprofit Drupal posts: March 2026 Drupal for Nonprofits Chat
Join us THURSDAY, March 19 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 document at 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.
Information on joining the meeting can be found in our collaborative Google document.
18 Mar 2026 2:14pm GMT
UI Suite Initiative website: Announcement – Display Builder 1.0.0-beta4 is released
Just one week after beta 3, we are happy to announce the release of Display Builder 1.0.0-beta4! This is a focused stabilization release, shipping a solid batch of bug fixes - in particular around Entity view overrides - alongside improved API error logging and a handful of developer-facing improvements.A big thank you to the 6 contributors who made this release possible: anruether, fmb, ipumpkin, mogtofu33, nickolaj, and pdureau.
18 Mar 2026 10:25am GMT
Tag1 Insights: Preparing File Upload Secure Validator for Drupal 12 with AI
At Tag1, we believe in proving AI within our own work before recommending it to clients. This post is part of our AI Applied content series, where team members share real stories of how they're using Artificial Intelligence and the insights and lessons they learn along the way. Here, Stefanos Petrakis, maintainer of the File Upload Secure Validator module, shows how he used AI to modernize a small but widely used Drupal security module and prepare it for Drupal 12.
From "I'll Get to It" to Done: Modernizing File Upload Secure Validator
I've been meaning to clean up the File Upload Secure Validator project and get it ready for Drupal 12 for a while now. This small, focused module has been around for nearly a decade. Despite its simplicity, it continues to serve more than 10,000 reported sites, and adoption has only accelerated with the introduction of Drupal AI. With the help of Cline and Claude, I finally did a full overhaul of the codebase: switching to Drupal 11-only support, expanding the automated test suite, and positioning the project for Drupal 12.
A Decade-Old Module Meets Drupal 12
This was the kind of maintenance work I kept putting off, the same feeling I get when I need to sit down and do my taxes. I knew the project needed cleanup and modernization, but I wanted a little push and some company in doing the work. The missing motivation and sense of camaraderie were, in many ways, the biggest challenges.
On top of that, I had a clear vision for how I wanted to extend the test suite, and I knew it would be time-consuming. Time, or the lack of it, was a major factor, especially for this kind of detailed, behind-the-scenes work on an open source module.
Turning a Wish List Into a Working Plan
To move things forward, I turned to Cline and Claude to help plan the future of the module. I started by writing down a list of "wishes" for the project: the improvements I wanted to see in the code, tests, and overall quality.
Cline turned that list into a detailed execution plan. It also generated questions about the approach, which led us into a few iterations before we settled on the final course of action. That planning process gave structure to the work and made it much easier to tackle in focused sessions.
All of the changes happened in the project's repository on the 2.2.x branch, with the final result released as version 2.2.1 on Drupal.org.
From Red CI Pipelines to Green Across the Board
Before this overhaul, the project had accumulated a number of issues:
- Multiple GitLab CI failures
- Drupal 11.3+ deprecation warnings
- Unit test failures (including static method and
TranslatableMarkupissues) - Limited test coverage
- 383+ PHPCS violations
- CSpell errors
- PHPStan attribute errors
After the overhaul, the picture looks very different:
- All GitLab CI tests passing
- Zero deprecation warnings
- 23 tests with 164 assertions
- 0 PHPCS errors and 0 warnings
- 0 CSpell errors
- 0 PHPStan errors
- 100% CI quality checks passing
This overhaul gave me the "manpower" and momentum I was missing to push the project forward. Just as importantly, it gave me confidence that I can continue supporting this module in the future.
AI-Amplified Maintenance for Critical Dependencies
Maintaining and supporting open source libraries can often become demanding because of limited time and resources. In client projects, dependencies on under-maintained open source projects can increase the effort required to maintain or upgrade the client's own platform.
Partners like Cline and Claude can change the game in an advantageous way. Such a change can help teams keep critical open source dependencies up to date, improve quality, and reduce risk without requiring a huge amount of extra human capacity.
This post is part of Tag1's AI Applied content series, where we share how we're using AI inside our own work before bringing it to clients. Our goal is to be transparent about what works, what doesn't, and what we are still figuring out, so that together, we can build a more practical, responsible path for AI adoption.
Bring practical, proven AI adoption strategies to your organization, let's start a conversation! We'd love to hear from you.
18 Mar 2026 12:00am GMT
17 Mar 2026
Drupal.org aggregator
Four Kitchens: When the people who run the platform aren’t the people who run the content
A dashboard isn't just a summary page. It's a statement of priorities. Every item that appears, and everything that doesn't, tells editors what the organization believes actually matters.
That's worth thinking carefully about, because most dashboards aren't designed that way. They're assembled. A few shortcuts here, some default widgets there. The result is a starting screen that reflects what was easy to build rather than what editors actually need.
We help manage a Drupal platform that supports 500 editors across 130 sites. Getting a dashboard right for that kind of scale required us to ask some uncomfortable questions about what we actually valued, and what we'd been ignoring.
The quarterly PDF problem
Before we built our dashboard, someone on our platform team was manually generating reports for each of the 130 sites every quarter. Accessibility problems. Broken links. Duplicate content. All compiled, formatted, and sent out as a PDF.
It was better than nothing. But it had two serious problems.
First, people were unlikely to act on it. A PDF that arrives by email, detached from the website itself, is easy to file away and forget. Second, even the editors who did read it had no way of knowing whether they were improving until the next quarter's report showed up. The feedback loop was three months long.
This is a pattern that's common across organizations: the information that would most help editors do better work exists somewhere, but it's separated from the moment when they're actually ready to act on it. Updates get coordinated in chat threads. Content issues arrive by email. Broken link reports live in spreadsheets.
Editors are expected to carry all of that context across multiple tools and respond when something surfaces. For people whose primary job isn't web publishing, that's a lot to ask.
A dashboard brings that context back into the CMS, the place where the work actually happens.
The right moment to surface information
Editors don't log into a CMS at random. They arrive with a purpose: fixing a typo, publishing a new story, or checking whether a content import ran correctly. Whatever the task, they're already in the right mindset. They're thinking about the website and are ready to make changes.
That makes login the ideal moment to surface what needs attention.
On our dashboard, we highlight the pages with the most accessibility errors. We show a list of broken links. We surface draft content that never got published. These aren't things editors have to go hunting for. They appear right when editors are ready to do something about them.
We also use the dashboard to answer questions editors commonly ask us. One recurring one: how does content get into the site from other university systems? Faculty profiles, events, and course data. All of it comes in through automated imports. Drupal has robust tools for this, but its default interface exposes every option and setting, which is overwhelming for a content editor. So we'd never exposed it to them at all. Editors had no visibility into something that was working fine. They just didn't know it.
The dashboard gave us a place to show a simplified view of those imports: here's when faculty profiles last synced, here's the kinds of courses that are imported to this site. Just enough to answer the question and build confidence. Support requests about content imports dropped significantly after we added that.
From awareness to action
Information alone doesn't change much. The problem usually isn't awareness. It's timing.
When a broken link shows up in a quarterly report, the path from seeing it to fixing it is long and uncertain. Someone reads the report, makes a mental note, hopes they remember. Most of the time, they don't. By integrating that same information into the dashboard, the cycle changes:
Quarterly report → read → maybe remember → maybe act later
becomes
Login → see issue → click → fix
The feedback loop collapses from months to minutes. A broken link becomes a clickable item. A page stuck in draft becomes a quick decision. A list of accessibility errors becomes something an editor can start working through today.
One practical note from experience: some data sources introduce delays. Our broken link list comes from Siteimprove via API, which means that when an editor fixes a broken link, it won't disappear from the dashboard immediately. We didn't think about that until after we launched. It's not a dealbreaker, but it's worth designing around. At minimum, set expectations with editors so a fixed link that still appears on the list doesn't feel like a bug.
Every dashboard reflects a choice
Dashboards aren't neutral. They're curated.
Every item that appears is there because someone, explicitly or quietly, decided it mattered. Looking at our current dashboard, I can tell you what it says about our priorities: we value accessible content (pages with the most accessibility errors are one of the most prominent blocks), and we value simplicity and iteration over comprehensiveness.

What's not on the dashboard is equally revealing. We don't have traffic metrics or analytics. For this particular higher ed institution, that's a deliberate choice. The focus is on content quality and editor success, not marketing outcomes. For other clients we work with, traffic data would need to be front and center. The dashboard has to reflect what that organization actually cares about.
The conversations that happen while building a dashboard are often more valuable than the dashboard itself. When you ask your team what should appear on it, you surface competing priorities that usually haven't been written down anywhere:
- What are editors most commonly asking us for help with?
- What do we wish editors were doing that they aren't?
- What should be the first thing someone sees when they log in?
- What action should be easiest to take?
Those questions don't always have obvious answers. But asking them is how you build something useful rather than something that just looks like a dashboard.
And don't let perfect be the enemy of good. Our first dashboard was basic: simple tables, in a single column, nothing animated or interactive. If you get a dozen useful things on a dashboard, the organization as a whole is going to be better for it. Start there, then build up.
Guidance, not enforcement
There's a real risk that a dashboard drifts into feeling like a compliance tool, a place that exists primarily to point out what's wrong. If the only things editors see when they log in are warnings and error counts, the dashboard starts to feel like surveillance.
The same information can be framed very differently. A list of pages with accessibility errors isn't a punishment; it's a prioritized to-do list. A reminder about draft content that was never published helps an editor finish work that might otherwise be abandoned. A note that a component has recently changed gives editors a heads-up to check their pages before finding out something looks broken.
That last one is something we've gotten real value from. Our platform has 130 sites, which means making a breaking change to a component has a wide impact. Before we had the dashboard, that kind of communication was difficult. We still do targeted communications about breaking changes. But now we also use a simple announcements block (it pulls from a Google spreadsheet where each row is an announcement) to reach editors right where they're working. It's low-tech, but it means we can flag an upcoming change and tell editors exactly what to check. That's made us more comfortable shipping improvements we might otherwise have sat on.
The goal isn't to catch mistakes. It's to help editors succeed.
Supporting editors at scale
When your platform supports hundreds of editors across dozens of sites, traditional support breaks down fast. You can't train everyone personally. You can't answer every Slack message. And the editors who log in only a few times a year don't have the context that frequent users build up over time.
The platform itself has to take on more of that responsibility.
One thing that helped clarify our thinking: on the back end, your audience is actually more focused than it might seem. On the front end of a university website, you're trying to serve prospective students, current students, faculty, staff, donors, and more. But in the CMS, your primary audience is your content editors. There might be a few other users (stakeholders who log in occasionally to get a lay of the land, or interns assigned to clean up a single page), but by and large, you're designing for a pretty clear group.
For us, that meant focusing our first version on the editors who log in regularly and need to take action. We can add more guidance for infrequent users in later iterations. Starting with the core use case meant we shipped something useful without trying to solve everything at once.
A well-designed dashboard becomes a quiet guide embedded in the platform, helping editors move forward without needing someone from the platform team to step in. At scale, that kind of built-in guidance isn't just helpful. It's essential.
Join us at DrupalCon Chicago
In our session, "A Dashboard that Works: Giving Editors What They Want, But Focusing on What They Need," we'll share the story behind a dashboard built for 500 editors across 130 sites - the decisions we made, the things we got wrong, and how we figured out what actually belongs on a dashboard and what doesn't.
We'll walk through:
- How we identified what editors needed versus what they asked for
- How we balanced editorial priorities with technical realities
- What we'd do differently if we were starting over
Whether you manage one site or one hundred, we hope you leave with something you can use.
If you go
If you're going to DrupalCon Chicago 2026, please make sure to attend the session with Dave Hansen-Lange and Albert Hughes.
Where: Hilton Chicago, 720 S Michigan Ave, Chicago, IL 60605, Williford B (3rd Floor)
When: Tuesday, March 24, 2026, 9:00-9:50am
The post When the people who run the platform aren't the people who run the content appeared first on Four Kitchens.
17 Mar 2026 9:33pm GMT
Specbee: How to add Taxonomy term references to Canvas (experience builder) components in Drupal
If you're struggling with taxonomy references in Drupal Canvas, you must read this! Add entity reference autocomplete fields using a simple $ref, no custom code needed.
17 Mar 2026 11:20am GMT
The Drop Times: Future-Proofing Accessibility for Government and University Drupal Platforms
A DrupalCon Chicago session titled "Future-Proofing Accessibility: Strategies for Government & University Platforms" will examine practical approaches to accessibility implementation as compliance requirements evolve in the United States. Speakers from Lullabot will present lessons from government and university projects, highlighting Drupal's accessibility capabilities, common pitfalls, and strategies for building compliant digital services.
17 Mar 2026 10:04am GMT
16 Mar 2026
Drupal.org aggregator
Talking Drupal: Talking Drupal #544 - World Cancer Day
Today we are talking about World Cancer Day, how they use Drupal, and why Drupal was the right choice with our guests Charles Andrew Revkin & Diego Costa. We'll also cover PDFa11y as our module of the week.
For show notes visit: https://www.talkingDrupal.com/544
Topics
- What Is World Cancer Day
- Why UICC Uses Drupal
- Diego Joins the Project
- Multilingual Strategy at Scale
- Drupal Architecture and AI Tools
- Vetting AI Moderation and Summaries
- AI Disclosure and Review
- Traffic Spikes and Scaling
- Drupal Stack and React Apps
- Campaign Theme United by Unique
- Yearly Content and Three Year Cycle
- Drupal Community and Open Access
- Custom AI Modules and Azure
- Future Improvements and AI Tagging
- Story Submission Formats
- Prevention PSA and Wrap Up
Resources
Guests
Diego Costa - 1xinternet.com diegofcosta Charles Andrew Revkin - worldcancerday.org revkin
Hosts
Nic Laflin - nLighteneddevelopment.com nicxvan John Picozzi - epam.com johnpicozzi Steve Wirt - civicactions.com Swirt
MOTW Correspondent
Martin Anderson-Clutz - mandclu.com mandclu
- Brief description:
- Have you ever wanted to check PDF files for accessibility, as they're uploaded to your Drupal site? There's a module for that.
- Module name/project name:
- Brief history
- How old: created in Feb 2026 by Joshua Mitchell (joshuami), a friend of this podcast
- Versions available: 1.0.1, which works with Drupal 10.2 and 11
- Maintainership
- Actively maintained
- Security coverage in process
- Test coverage
- Number of open issues: none
- Usage stats:
- 0 sites
- Module features and usage
- With the PDFa11y module installed, you can set its configuration, including whether to enable or disable automatic checking on upload, whether to block uploads that fail checks or just show warnings, a minimum PDF version requirement, and which accessibility checks to run
- The module also sets creates three new permissions, Administer PDF accessibility settings, Run PDF accessibility checks, and View PDF accessibility report
- Each PDF media item has an "Accessibility" tab where anyone with the necessary permissions can view the check results
- Under the hood PDFa11y uses the smalot/pdfparser library to extract data from PDF files
- Many sites rely on PDFs to make available content that they aren't able to migrate directly into Drupal content, so making sure that doesn't introduce its own accessibility regressions is an important step
16 Mar 2026 6:00pm GMT
The Drop Times: When “Free Beer” Meets Infrastructure Reality
The modern web runs on Open Source. The software itself remains freely available, but the infrastructure that sustains the ecosystem operates under fragile funding models. In a recent blog post, Drupal founder Dries Buytaert draws attention to a structural imbalance familiar across many open-source projects: the registries, repositories, CI systems, and update services developers rely on are widely treated as public goods, yet their costs are rarely shared proportionally by the organisations that depend on them.
In Drupal's case, maintaining the ecosystem's infrastructure costs roughly $3 million each year, covering servers, bandwidth, content delivery networks, software systems, and operational staff. When distributed across the installed base, that amounts to roughly $10 per active Drupal site annually. The Drupal Association currently operates with about $7.50 per site, leaving a modest but persistent gap. The shortfall does not immediately break systems, but it accumulates as technical debt: upgrades are postponed, legacy infrastructure remains in service longer than intended, and improvements move more slowly than the community might expect.
The deeper issue is structural rather than financial. Hundreds of thousands of sites rely on Drupal.org services, yet the cost of operating those systems remains largely disconnected from the organisations that benefit from them. Much of Drupal's infrastructure is sustained through a combination of event revenue, sponsorship, corporate memberships, and generous in-kind contributions from partners such as AWS, the Oregon State University Open Source Lab, and Tag1. These contributions are invaluable, but they also illustrate how much the ecosystem depends on goodwill rather than predictable funding mechanisms.
Dries suggests that the next stage of maturity for open-source ecosystems may involve exploring models that better connect infrastructure usage with long-term sustainability. The software itself remains open and freely accessible, but the systems that support development, distribution, and updates must remain reliable as the ecosystem continues to grow. Raising the question now allows the Drupal community to discuss potential approaches calmly, before infrastructure pressures turn the conversation into an urgent problem.
The following stories highlight notable developments from across the Drupal ecosystem during the past week.
DISCOVER DRUPAL
- Drupal 12 to Remove Migrate Drupal and Migrate Drupal UI Modules from Core
- FlowDrop UI Agents Alpha Introduces Visual Workflow Builder for Drupal AI Agents
- Drupal Core Sets Navigation as Default Admin Experience in Place of Toolbar
- Drupal AI 1.3.0 Introduces Guardrails, Editorial Workflows, and Observability
- drupalorg-cli 0.8.0 Adds Native GitLab Workflow Commands
EVENT
- Lessons from Building Europe's Largest Public Sector Drupal Platform at DrupalCon Chicago 2026
- Beyond the Commits: Join the Drupal Coffee Exchange at DrupalCon Chicago 2026
- Kushal Agrawal to Share Career Story in "Power of Participation" Session at DrupalCamp Delhi 2026
- Peter Wolanin to Present Session on Drupal Plugin API at DrupalCamp NJ 2026
- Editoria11y 3.x to Receive First Public Tour at DrupalCamp NJ 2026
- DrupalSouth 2026 Splash Awards Open Applications for Judges
- Ship Faster, Catch Bugs Earlier: How Georgia Rebuilt QA and UAT for 80+ Drupal Sites
- Drupal 25th Anniversary Gala Ticket Sales Close 18 March
- Making Governance Visible: Embedding Content Rules Directly Into Drupal
ORGANIZATION NEWS
DRUPAL COMMUNITY
Additional developments from across the Drupal ecosystem were published during the week. Readers may follow The DropTimes on LinkedIn, Twitter, Bluesky, and Facebook for continuing updates. The publication also maintains a presence on Drupal Slack in the #thedroptimes channel.
Thank you.
Alka Elizabeth
Sub-editor
The DropTimes
16 Mar 2026 3:57pm GMT
Dries Buytaert: Never submit code you don't understand

Years ago, in the early Drupal days, you would see a mantra everywhere: "Don't hack core".
It showed up in issue queues, conference talks, support channels, stickers, and even on T-shirts. It was short and memorable, and it solved a real problem: too many people were modifying Drupal Core instead of extending it properly.
Over time the mantra worked. The ecosystem matured. Not just the software itself, but also the habits and expectations around it. Today you rarely hear people say "Don't hack core".
With AI changing how code gets written, we may need a new mantra.
In Open Source, all code needs to be understood and reviewed before it can be merged. That responsibility belongs to both contributors and maintainers. AI is changing how code gets written, but it does not change that responsibility. In fact, it may make it easier to forget.
Code you don't understand becomes someone else's problem. In Open Source, that someone is often the maintainer reviewing your patch.
Offloading bad code onto maintainers slows down reviews for everyone. Plus, you miss the chance to learn from the code and grow as a developer.
It shouldn't matter what tools you use. But if you submit code, you should be able to explain what it does, why it works, and how it interacts with the rest of the code.
Everyone starts somewhere. Even today's top contributors submitted imperfect patches early on. You are welcome here, with or without AI tools. Perfection isn't required, but understanding your code is. Own your code.
Maybe it's time for some new stickers and T-shirts.
Never submit code you don't understand.
Thanks to Natalie Cainaru, Jeremy Andrews and Gábor Hojtsy for reviewing my draft.
16 Mar 2026 3:37pm GMT
DrupalCon News & Updates: Drupal Powering Digital Ecosystems: Showcase your case study at the DrupalCon Europe 2026 Success Stories and Innovation track
As we look ahead to DrupalCon Europe 2026 in Rotterdam this October, we invite organizations, agencies, and digital leaders to submit their stories to the Success Stories & Innovation track.
This track showcases how Drupal is used today to power far more than websites. Across industries, Drupal enables organizations to build digital platforms, integrate complex systems, automate workflows, and create scalable ecosystems that support real business needs. From AI-driven personalization to DevOps automation and composable architectures, we want to highlight real-world projects that demonstrate how Drupal drives innovation.
In today's fast-moving digital landscape, organizations must continuously evolve to stay competitive. Digital transformation is no longer just about launching a new website - it's about building connected systems, automating processes, and delivering consistent experiences across multiple channels. Drupal plays a key role in this transformation as a flexible, secure, and extensible open-source platform that adapts to complex enterprise environments.

Foto by Paul Johnson https://flic.kr/p/2rzSoJP
Why Drupal?
Drupal is not just a content management system. It is a powerful platform that can act as the backbone of digital ecosystems, integrating content, data, services, and applications into a unified experience.
Organizations use Drupal to power digital experience platforms, API-first architectures, multi-site environments, and enterprise integrations. Its flexibility, scalability, and strong security model make it a trusted choice for governments, universities, global companies, and nonprofits.
With the rapid growth of AI, automation, and composable architectures, Drupal continues to evolve. Teams are using Drupal together with modern DevOps pipelines, personalization engines, headless front-ends, and cloud platforms to create future-ready digital solutions.
Today, Drupal powers more than 1.6 million active sites worldwide and supports platforms used by governments, media companies, universities, healthcare providers, and global enterprises.

Foto by Paul Johnson https://flic.kr/p/2rzSprX
How organizations use Drupal for digital transformation
Drupal is used in a wide range of industries to power critical digital systems, large-scale platforms, and complex content environments. For many organizations, Drupal is not just a website CMS, but the foundation of a broader digital infrastructure.
Across sectors, Drupal supports platforms such as:
- Government and public sector services
Secure, accessible, and compliant platforms used by citizens, agencies, and institutions.
- Higher education and research ecosystems
Multi-site university platforms, student portals, research publishing, and internal collaboration systems.
- Enterprise and corporate platforms
Global websites, intranets, partner portals, and multi-brand environments.
- E-commerce and transactional systems
Commerce platforms connected to payment providers, product systems, and ERP integrations.
- Healthcare and life sciences platforms
Secure, multilingual, and compliant solutions for hospitals, research organizations, and health agencies.
- Media, publishing, and content-heavy platforms
High-traffic sites, editorial workflows, and multi-channel publishing systems.
- Nonprofit and international organizations
Fundraising platforms, campaign sites, and global content networks.
- Content hubs and API-driven platforms
Drupal as a central system connected to multiple front-ends, apps, and services.
In many of these environments, Drupal is part of a larger ecosystem that includes cloud infrastructure, external services, internal tools, and custom applications. We want to showcase how organizations are using Drupal in these real-world contexts.

Foto by Paul Johnson https://flic.kr/p/2rzR6US
DrupalCon Europe 2026 Rotterdam: Share your success story
Join us at DrupalCon Europe 2026 in Rotterdam this October and present your case study in the Success Stories & Innovation track.
This track is designed for organizations, agencies, digital managers, CTOs, CMOs, product owners, and business leaders who use Drupal to build impactful digital platforms and innovative solutions.
Our sessions are aimed at decision-makers and teams who want to understand how Drupal is used in real projects - not just as a CMS, but as part of larger digital ecosystems.
Whether you are building enterprise platforms, integrating AI, automating workflows, or connecting multiple systems, your experience can help others learn what is possible with Drupal.
What can you showcase?
For the Success Stories & Innovation track, we are especially looking for case studies that go deeper into how Drupal is used, how projects were built, and what makes them innovative.
We welcome submissions that explore themes such as:
- Drupal as part of a larger ecosystem or platform architecture
- Using Drupal beyond traditional websites
- Composable, headless, or API-first implementations
- Using AI in Drupal projects, including content automation, personalization, or intelligent search
- DevOps, CI/CD, and automated deployment workflows
- Integrations with CRM, ERP, marketing, or data platforms
- Automation of editorial, content, or business processes
- Managing multi-site, multi-brand, or multi-product platforms
- Building long-term, scalable, and maintainable systems
- Security, compliance, and accessibility at scale
- Using Drupal as a content hub, data hub, or integration layer
We are particularly interested in stories that show how decisions were made, what challenges were solved, and what others can learn from the experience.
Tell us not only what you built, but why you built it that way.

Foto by pdjohnson https://flic.kr/p/2rzLG3s
Why participate?
Tell your story
DrupalCon is the perfect place to share how your organization uses Drupal to solve real problems - whether you are building platforms, integrating systems, improving workflows, or creating new digital experiences.
Give back to the community
DrupalCon is about learning, sharing, and connecting with one of the largest open-source communities in the world. Your experience can inspire others and help shape the future of Drupal.
Submit your case study: https://events.drupal.org/rotterdam2026/submit-your-session-proposal
Are you ready to showcase your Drupal-powered innovation? Submit your proposal for the Success Stories & Innovation track at DrupalCon Europe 2026 in Rotterdam and share your story with the global Drupal community.
Let's build the future of digital experiences together.
See you in Rotterdam!
16 Mar 2026 12:41pm GMT
