About this site

The Accidental Coder (TAC) v3.0 is the culmination of “spare time” in the year of COVID. I couldn’t have achieved this without assistance. Please see the credits. There were quite a bit of changes from v2, including:

  • D8 => D9 migration
  • Content type restructuring
  • Taxonomy restructuring
  • Classic element design => Component-based design
  • Grid layout => Flex layout

TAC is running on this technology stack:

Server technology stack


The UI is component-driven, using the Gesso theme, a consumer of Pattern Lab. The admin theme is Gin. I use a minimal collection of contributed modules. Some prefer to use them rather than create code. I prefer the flexibility that custom code brings me, not to mention that coding is why I'm in this field to begin with! I do, however, temper my approach with a dose of rationality.


Site Drupal architecture

Images are a mix of webp, svg and raster formats. Many were created using either Gimp, Inkscape, or both.

My development is done on a MacBook using MacPorts to provide the LAMP environment. I use PhpStorm as my IDE. It offers more functionality than I'll ever use.

For debugging (and there was a LOT of debugging), the most essential tools were ”xDebug, for PHP, Twig debugging, Chrome DevTools and Mozilla Toolbox, for JavaScript and CSS.

Other indispensable tools include Drush, Composer, Drupal Console, Gulp, FileZilla, git and GitHub (in dark mode, yay!).

The main content area of the home page contains teaser cards of the most recent piece of each content type (bundle). Leading the tag list at the bottom of each card is a content type tag, outlined in orange, that flips the card to a paged list of all content of that type, when clicked. This video shows how it works.