Open Source

I have written, open-sourced, and maintain a number of Drupal modules, Sculpin bundles and PHP projects - as well as the source code for this website! Here is some information about each project and a link to it’s project page.


Accessibility (a11y) Checklist

Similar to the SEO Checklist and QA Checklist modules, this module provides a checklist of accessibilty-related modules and tasks to perform on a Drupal site.
Drupal 7

Block ARIA Landmark Roles

Inspired by Block Class, this module adds additional elements to the block configuration forms that allow users to assign a ARIA landmark role to a block.
Drupal 7

Breadcrumbs by Path

A light-weight module which simply builds breadcrumb trails based on a URL alias.
Drupal 7

Collection class

Integrates Laravel’s Collection class into Drupal 7.
Drupal 7

Comment Hide Subject

Hides the comment subject if the "Allow comment title" checkbox is unchecked for that node type.
Drupal 7

Commerce Cart Empty Paths

This module allows site administrators to define multiple paths, and when a user visits a non-declared page, their shopping cart is emptied.
Drupal 7

Copyright Block

Creates a block that allows you to configure a copyright message that automatically updates using the current year from the server that your site is hosted on.
Drupal 7 Drupal 8

Image Style Class

Adds classes onto each rendered image showing the image style name.
Drupal 7


A module to make the implementation of mapify.js into Drupal 7 relatively simple.
Drupal 7

Node Comment Block

This module moves the comments for a node into a moveable block.
Drupal 7

Null User

Adds a NullUser class for simpler code with less conditions.
Drupal 8

Override Node Options

Allows permissions to be set to each field within the Authoring information and Publishing options field sets on the node form.
Drupal 7 Drupal 8

Pathauto Menu Link

Forces an update of the Pathauto-generated path when a menu link item has been updated. Useful if you use parent menu links to generate paths.
Drupal 7 Drupal 8

Private Message Queue

Adds the ability to queue private messages for sending.
Drupal 8

Rules Block/Unblock User

Adds rules events, as well as some default rules, for when a user account is blocked or unblocked.
Drupal 7

SpeakerDeck Field

Adds a field for embedding content from SpeakerDeck.
Drupal 8

Toggle Optional Fields

Creates a simplified node form by allowing for the hiding and toggling of optional fields.
Drupal 7

Webform ARIA

Adds ARIA support to forms created using the Webform module.
Drupal 7

WP Blog Migrate

Convert your existing Drupal blog into the WP Blog module by re-assigning the content type for existing nodes and moving any existing tags into the WP Blog taxonomy vocabulary.
Drupal 7


The source code for this website, which is built with Sculpin.

Sculpin Content Generator Bundle

Provides new Sculpin commands for generating new content.

Sculpin Gist Bundle

Allows for embedding GitHub Gists into a Sculpin site.

Sculpin Skeleton

A skeleton project for the Sculpin static site generator.

Sculpin Twig Markdown Bundle

Enables rendering content from markdown, using Sculpin’s core markdown parser.

Sculpin Twig Sort by Field Bundle

Enables sorting an array by a certain field on each item.


Drupal Meetups Twitterbot

A Twitter bot that retweets posts about Drupal meetups.

Drupal VM CLI

A command line tool for Drupal VM.

Gmail Filter Builder

Allows you to define Gmail filters in PHP using a fluent API, and then generate XML that you can import into Gmail's filter settings.


  • Currently no spare part-time capacity.
  • Currently no spare full-time capacity.