Rendering Twig templates programmatically in Drupal 8

From time to time, I have the need to take a Twig template and a set of variables, render the template, replacing all the variables within, and then get the output as a string. For example, if I want to have a really simple email template in a custom module which has a variable for first_name, so I can customize the email before sending it via Drupal or PHP, I could do the following in Drupal 7:

Things I learned at the AnsibleFest Austin 2018 Contributor's Summit

AnsibleFest Austin 2018 is about to get started (with a huge party tonight, then a keynote to kick off two full days of sessions tomorrow), and the day before and after the 'Fest marks the 6th "Contributor's Summit", a "working session with the core team and key contributors to discuss important issues affecting the Ansible community".

AnsibleFest 2018 Austin Contributors Summit

As with most conference-related events, the best part of the day is getting to meet with and talk to people you work with online, but there are also usually lots of little tidbits discussed during the sessions which aren't yet widely known. Some of the most exciting things I learned today include:

Drupal's Contrib floodgates are open, PAReview your projects in Drupal VM!

Last week, the proverbial floodgates were opened when finally opened access to any registered user to create a 'full' project (theme, module, or profile). See the Project Applications Process Revamp issue on for more details. modules page
You can now contribute full Drupal projects even if you're new to the community!

Honeypot for Drupal 8, 3 years in the making

Almost three years ago, on Feb 19, 2013, I opened the 8.x-dev branch of the Honeypot module (which helps prevent form spam on thousands of Drupal sites). These were heady times in the lifetime of the then-Drupal 8.x branch; 8.0-alpha1 wasn't released until three months later, on May 19. I made the #D8CX pledge—when Drupal 8 was released, I'd make sure there was a full, stable Honeypot release ready to go.

Little did I know it would be more than 2.5 years—and counting—before I could see that promise through to fruition!

As months turned into years, I've kept to the pledge, and eventually decided to also port a couple other modules that I use on many of my own Drupal sites, like Wysiwyg Linebreaks and Simple Mail.

Introducing the Honeypot form spam protection module for Drupal

Now that I've released a Drupal 6 backport of what I originally wrote as a Drupal 7 module, I figured I would write a little bit in the way of introducing one of the simpler, and more user-friendly ways of controlling spam in Drupal (as opposed to other also-helpful methods, like Mollom, CAPTCHA, etc.).

I'd like to thank Flocknote for giving me the development time to work on this module, as we needed something like it for the new 'version 3' launch of

Full Site Buildout: Part 4 - Releasing a Theme on d.o!

Part 4 of a series: Building out a full Drupal site in a weekend.

Well, after having a successful launch day, ironing out a few small bugs in the CSS of the layout, and patting myself on the back, I decided to push the initial release of the 'Airy Blue' theme created for Open Source Catholic out to Drupal's Theme repository. It turns out working with CVS isn't the hell-on-earth I thought it would be, but it's still a heckuva lot to expect from a guy who logs less than an hour a day in a command-line interface!

I applied for a CVS account, then read through the plentitude of CVS documentation for themers on, making a few notes here and there. After having my CVS account approved, I finally had some time to fire up Terminal, and go through the process of first 'checking in' to CVS, then uploading my theme directory, and finally 'committing' and 'tagging' it for release on my project page.

>> It's a lot easier to zip up the files and link to them, let me tell 'ya! <<

Anyways, enough about that process (if you ever need help, jump into the #drupal IRC channel and see if webchick's around. If she is, she'll help you in no time!); here's the description of Drupal's newest contrib theme, Airy Blue:

Subscribe to RSS - contributions