Thomas Royal

Composer | Pianist | Technologist

Writings


Responsive Redesign Using Pelican and Skeleton

May 08, 2014

I finally found enough time to redesign my site. The old one is available on the Wayback Machine. It was an interesting thing to make, however, there was a lot about it I didn't like. First, it was a very odd design, with weird pictures everywhere and a certain cheapness that arose out of the rounded corners and the rediculously tiny menu. Further, as a portfolio site, it wasn't well organized.

I decided to create a static site using Pelican, a static site generator written in python that uses Jinja2 as its templating system. I really had an amazing time migrating the site. I don't think there has ever been a tech project I worked on in which so much has gone so well. Pelican is quite flexible, allowing me to embed my Google Analytics code in a configuration file, while adding whatever else I wanted to the configuration and using it in my custom templates Further, Pelican allows for the use of meta information in one's markdown files, a trick demonstrated by Martin De Wulf. This trick, in particular, allowed me to easily embed multiple soundcloud players on my compositions page.

(I could have benefitted, however, from better documentation. Sure, the code is self documenting, but why should one have to look at the code for what is to be a simple static site generator.)

The visual design of the site was faciliated by the Skeleton css template. This allowed me to dabble in responsive design, meaning that my site should have a consistent design on multiple devices.

Overall, this has been an excellent learning experience, and further, it has become much easier for me to upate my site. Expect more updates from me in the future.

Note that I am now using nginx rather than apache, and have migrated to digital ocean from linode.