This Site


This site, despite it's stunning good looks, isn't based on a traditional content management system, it's based on Pelican, a Python based static site generator. Since it's a static site generator, when I write content for the site, it's written in Markdown, I hand it to Pelican, and it generates static HTML files, styled in my theme of choice, which I then upload to my web host.

I'm using the photos plugin to manage the screenshots and photo galleries internally, and Magnific Popup to actually display the photo galleries. I'm using code very similar to much of the example code on the plugin page, plus some modifications to the plugin itself to make the lightbox tag correctly generate links that will work with Magnific Popup. The plugin automatically resizes all the images in galleries to a consistent size and quality, generates thumbnails, and allows me to insert them into my pages with simple "lightbox" links.

The theme I'm using is Alchemy. I've made minor changes to the theme in order to make the front page function, using some jinja code off of this page as an example to make the list of recent updates, and some additional code suggested on the photos plugin's page to make the lightbox work, but the majority of the theme is unchanged. I plan to make my own theme at some point, but for now, Alchemy is quite good.


This site has gone through some level of churn over the years, and this is it's latest incarnation. Here's the blog post about when I updated it to Pelican. In that blog post, I go over why I wanted to use Pelican, what it gives you, and a little bit of my journey with learning it. If you're wanting to get a review of Pelican and using it in practice, check that page out.

In fact, I've made a number of blog posts about this site, which you can find here.

Given that this is a personal site, I don't publish the source on github or anything, but I could see it being useful to have the source available as an example of Pelican being used in practice. Throw me an email (my address is at the bottom of the page), or a message on social media (links are at the top of the page), and I'll zip it up and send it to you!