Recently, I have decided to move this personal blog to a new CMS. I wanted the new platform to be fast and easy to deploy. My initial idea was a simple CMS, with just markdown support.
After looking at some open source CMS that are able to parse markdown, I came up with Octopress. Octopress is not properly a CMS, it is a framework that makes easy to start using Jekyll, which is a static site generator. Basically, you write markdown files and it converts them into html files.
Octopress tools rock!
The great part of Octopress is that it bundles with all the cool web tools that make creating a website faster.
By default, Octopress comes with:
- A semantic and responsive HTML5 template
- 3rd party support for Twitter, Google Plus One, Disqus Comments and more
- An easy deployment strategy using Rsync
- Easy theming with Compass and Sass
- Some cool plugins and the ability to extend its functionalities
Moreover, it has a builtin Rake server, so you can develop your own website locally with a single command (and without setting up a complex web server):
cd /path/to/octopress && rake preview
Theming the website
The default Octopress theme is really cool, but I think it is a bit too complex. It is well structured, but it has lots of files that are simple containers for other files, making the right file to edit quite hard to find. For instance, the default
_include folder has more than 30
.html files, while my final theme has only 16
It would be nice if Octopress had a simpler base theme, so advance developers can start from scratch instead of being forced into someone else file structure. BTW, the files are plain HTML so are really easy to read and understand.
Bye bye Django
Anyway, the port from the old framework (Django) to Octopress was quite straightforward. They both share a similar template language (with the double curly brackets “ to print variables) so I just need to change the name of the variables and then the page works.
I am moving away from Django only because I lack time to maintain it. The old website was still on version 1.2.5 while the framework has moved to v1.4.5 at the time of writing and the update process is not always straightforward.
On the other side a static website has no maintenance cost, moreover I can store the Octopress framework on my local machine without worring about online server configuration.