Now stop, Kirby time

I’ve been looking for a clean, simple and minimal CMS for a while now, to no avail. There isn’t a whole lot out there worth using, and the major players like Wordpress are just bloated these days. I love them, but I don’t want to use them.

Lately I’ve found myself making static websites for myself, because I just don’t want to deal with trying to theme around the functions I won’t use. And that was kinda lame.

But then, amongst the darkness I found the hero of our story; Kirby CMS.

I immediately set out on building a Kirby project, which turned out to be this blog. Because making templates for Kirby is so simple and uses logical PHP, I felt I could really build the template from the ground up, how I wanted it. This led to me using a whole load of new web standards I’ve been meaning to for quite some time.

Building this blog has held so many design firsts for me, and I’d like to tell you about all of them. Unfortunately if I do that this post will end up unreasonably long. So just keep an eye on the blog.

Kirby CMS

I can’t speak more highly of Kirby. It’s wonderfully simple, it’s easy to theme and it doesn’t use databases! The fields on a page are created by literally writing them into the .txt file that controls each page, and then calling them with obvious PHP functions. Each page is built by simply creating a new folder with a .txt file, making the structure a breeze to maintain.

I doubt I do it justice, nor will I, so I strongly suggest that you head over to the website and poke around a bit. But I can most definitely give you some examples of why I love it so much.


It’s so simple. If you know any PHP and you can code a static design, then you’re set. Hell, even running it on my MAMP installation is easy because I only needed Apache.

I coded this entire blog from the core up with less than 2 days work. Honestly.


I’ve been meaning to give Markdown a go for some time now, but never really had a reason to. And now here I am, writing in Markdown.

Why Markdown? It’s just so easy. The syntax is beautifully readable, and the reference style linking is such a life saver.

What do I mean by reference style linking? There’s a list of the links I’m using for this page sitting at the bottom of my file like this;

[1]:  "Kirby CMS"
[1.1]: "Markdown"
[1.2]: "iA Writer"

Then using these references I just link inline, marking the text with the reference identifier (in this case 1.1, but text works fine also);

I've been meaning to give [Markdown][1.1] a go

And because I’m using Markdown, I’ve set up a very nice workflow with iA writer and Dropbox. Using the wonderful iA writer I can write blog posts on my iPad (in another room or in bed) and save them to Dropbox. Then, by the magic of symlinks, the files on my localhost update and I can view them in my browser. Perfect previews.


Oh god the flexibility. Not only can I make the most responsive templates I’ve ever created, I can expand on them infinitely. I can so easily create ‘art directed’ blog posts. You might notice that this page is nicely Kirby (that little Nintendo fella) coloured, while the rest of the blog is blue. This is thanks to the simplicity of Kirby letting me give each page it’s own CSS file.

But changing colours is small fish, I have a few drafts sitting in MAMP where I have changed everything from the layout, to using responsive icons at the top of the post so each device sees a different icon. It’s beautiful. Expect to see some madness ensue with this blogs design.

It’s PHP

Seriously. No database. No template language. No fucking hassle.

The rest

You remember how I said there was a whole lot of firsts building this blog? I haven’t forgotten them, but I haven’t written about them yet either. So here’s a list linking to their respective sources. I’ll update this list with my posts as I go.

Next article
My mobile first grid 4 August '13