Add a JSON API to Any Static Site Generator
Static site generators output HTML, but they can output JSON too. Here is how to add a JSON API to your Hugo site, and why the technique works with any SSG.

I am a Developer who does web good and likes to do other stuff good too.
Written on April 23, 2026
Static site generators output HTML, but they can output JSON too. Here is how to add a JSON API to your Hugo site, and why the technique works with any SSG.
Written on January 5, 2026
The Zed editor is one of the more interesting new projects in a long while. The only problem is I use PHP and Zed sucks at PHP. One thing that sucks is Xdebug support. I finally got Xdebug working with the help of Claude. Notice, however, that I didn't say Claude got Xdebug working.
Written on March 30, 2018
I played the Edward Gorey inspired card game Gloom the other day. The game and mechanics are fun, but if the dark humor of the game isn't for you then try these rules on a standard 52 card deck.
Written on April 23, 2017
For the majority of people who will be switching from Fahrenheit to Celsius, this is all you need to know.
Written on October 24, 2016
I should continue my series on Machine Generated text or Composer or Drupal, but this just looks like too much fun. WebVR with AFrame.
Written on August 16, 2016
A Hello World style introduction to Composer.
Written on May 27, 2016
Using git-flow as a workflow for semantic versioning. This is a circular dependency that is good.
Written on March 28, 2016
Explore a bit of field fetching with Drupal 8
Written on January 20, 2016
How to work with case sensitive files on a file system that is case insensitive
Written on November 11, 2015
EntityFieldQueries are one of the most useful things in Drupal 7, using tags we can get around some of the limitations of using them.
Written on October 25, 2015
Without adding any non-Github pages approved plugins, build a RESTfull api for your blog by adding a json endpoint.
Written on September 10, 2015
Style can be passed as a parameter to the console.log function.
Written on June 10, 2015
Did you know that EntityFieldQueries can have subqueries? They can.
Written on May 19, 2015
In this post Frank walks through the basics of setting up Jenkins to run on Ubuntu. This is a simple step by step with links to more information.
Written on May 4, 2015
Sometimes the best solution is to do something hacky. I am not saying this is the best way to make Drupal forms autosubmit. I am only saying that this is one way.
Written on January 27, 2015
Are you fed up with the offerings of Drupal, Wordpress, and other big CMSs? Then maybe a return to roots is in order. Let's look at Jekyll
Written on November 15, 2014
Did you know that 3D is possible on the web with WEBGL? You did? Oh, well, go checkout Three.js then.
Written on May 6, 2014
Over the course of my career I have worked on more than a fair share of higher-education sites. When dealing with a universities website there are many challenges. One of the biggest challenges is in dealing with the accessibility standards. I am writing about WCAG. The WCAG, or Web Content Accessibility Guidelines, is a detailed list for how accessibility should be done on the web.
I might write about the problems with WCAG at some point, but this article is about strictly an incompatibility between what the designer/UX people want and what the WCAG says about “READ MORE” links. Specifically WCAG 2.0 SC 2.4.4. This states that any link needs to have context.
Written on January 24, 2014
At SandCamp I gave a talk on utilizing front end design paradigms and how they can be used with Drupal. In this talk I focused on SMACSS, however, there are many more out there such as DRY, BEM, and OOCSS. For more information, checkout my blog post on the subject of the multitude of css paradigms.
Utilizing Front End CSS Design Paradigms In Drupal Talk from SandCamp 2014
Written on November 26, 2013
Sometimes you need a form to submit itself. A select list changes, the page reloads with new options, no extra clicks required. Drupal’s Form API has an #ajax handler for this, but it can be overkill when all you want is a simple page reload on change. Here is a lighter approach.
If you are unfamiliar with building forms in Drupal, please view Patrick’s post on the various options for building forms in Drupal. I will be focusing on forms built with Drupal’s Form API (or fapi).
Written on November 21, 2013
Front End CSS Design Paradigms have been a very hot topic lately and many people are attempting to solve the problem of large CSS rule sets that are difficult to maintain. With all the new options it might be difficult to decide where you should focus your attention. Here is a little overview of some of the more popular options.
OOCSS has several principles that it is built upon.