Published on

A new website w/ Next.js


For years, I have re-invented this site practically yearly.

In 2016, it was a Next.js site hosted on Digital Ocean.
In 2018, it was a site hosted in Github pages
In 2019, I switched to Gatsby
In 2020, I started something more bespoke before consulting took over my life
In 2021, I just want it to look pretty and work

So I'm back, full circle, to Next.js!

The goals of this site are thus:

  1. A nice single source for all of my contact info
  2. A digital resume, with some work
  3. An easy answer to 'what do you do?'


Site Features:


MDX allows for very cool, interactive compontents to be used within markdown documents. Learn more here

Code Blocks

var num1, num2, sum;
num1 = prompt("Enter first number");
num2 = prompt("Enter second number");
sum = parseInt(num1) + parseInt(num2); // "+" means "add"
alert("Sum = " + sum); // "+" means combine into a string


  • Easy styling customization with Tailwind 2.0 and primary color attribute
  • Near perfect lighthouse score - Lighthouse report
  • Lightweight, 39kB first load JS, uses Preact in production build
  • Mobile-friendly view
  • Light and dark theme
  • Supports plausible, simple analytics and google analytics
  • MDX - write JSX in markdown documents!
  • Server-side syntax highlighting with line numbers and line highlighting via rehype-prism-plus
  • Math display supported via KaTeX
  • Automatic image optimization via next/image
  • Flexible data retrieval with mdx-bundler
  • Support for tags - each unique tag will be its own page
  • Support for multiple authors
  • Blog templates
  • TOC component
  • Support for nested routing of blog posts
  • Newsletter component with support for mailchimp, buttondown and convertkit
  • Supports giscus, utterances or disqus
  • Projects page
  • SEO friendly with RSS feed, sitemaps and more!