Skip to main content

PDFa11y: Review PDFs for Accessibility on Upload

PDFa11y helps editors understand accessibility issues in many PDFs as they are added to the site. The module scans PDFs on upload to look at their structure an provide immediate feedback. The scan can be run as a bulk process with queuing to give feedback on existing media libraries. Feedback appears on each document media entity as a primary action and in sitewide reports. Admins can also block inaccessible PDFs from upload. The module is open source and free for use.

We All Deal With Disability

I spent a moment musing on the human condition, our frailty, and what it means for making accessible tools and websites.

Slides from DrupalCon Chicago Gov Summit

If you attended the summit, or even if you didn't, here are the slides.

I Asked AI to Use a Screen Reader

While conducting accessibility audits of vendor-maintained applications for a government agency, I had an idea. What if I ask Claude Code to create a transcript of the experience of a blind user of NVDA screen reading software using the application. The results were astounding and enlightening.

Image Manipulation for Creative Control: Aspect Switcher and Cropping Techniques

Drupal's image manipulation options with image styles, responsive image styles, and image toolkits (GD and Imagemagick) are hard to beat. Have you ever wanted a different image style for landscape versus portrait featured images? Want a custom background fill? Need to make all your images grayscale? Drupal can do that and more. Learn what's possible with image effects to create consistent and performant images.

Vibe Coding a Blog Post into Session Slides for BADcamp

A couple months back I wrote about the new recipe unpacking feature in Drupal. The post received a fair bit of attention and was requested as a session at the Bay Area Drupal Camp (BADcamp). I continue to look for ways to leverage AI for something useful, so I decided to ask it to help me create Reveal.js slides.

Getting Rid of Unused Media with the Entity Usage Module

A client recently needed to audit a number of documents (mostly PDFs) that were unexpectedly appearing in Google search results. The easiest way to identify documents that needed to be archived was to review unused media. Media that was not referenced by field or embedding.

Revisiting Best Practices for Translating Government Websites in 2025

I've picked up a few more bits of knowledge that distilled into these presentations since originally writing this post. Needless to say, I have more than 10 recommendations at this point. To that end, I'm revisiting this important topic as of August 2025.