To CMS or not to CMS
💀 Hi. You're reading an old post. Some of the stuff in here might be out of date, look weird or smell funny. We're sorry. We all get old you know? 💀
Here at Bluegg, we're always looking at ways to improve our services and increase the value we can offer clients. One thing that we've scrutinised recently is our choice of content management systems (CMS) and if we even need to use them at all for every project. Wiring up a CMS (and the subsequent client support/training) can be a time-consuming affair, and with smaller websites can chew through a significant part of the budget—money that can perhaps be better spent elsewhere. If the client doesn't need to edit the whole site regularly, they can be a false economy.
So we decided to experiment. We just needed to find the right project with the right client—luckily, we met Absolute Performance. Having explained that we could give them more website for their money if they were happy to waive editing privileges, they were happy to oblige. This isn't to say that they aren't content-focused, quite the opposite, it was just clear that the vast majority of their copy was going to remain static—as do most 'brochureware' websites.
More than content management
CMSs don't just facilitate content editing—they do a whole bunch of other boring stuff that makes building a website easier. For example, you need some sort of 'templating' system in place to keep your code DRY. You also need something to handle navigation logic (for example, providing the hooks for showing the current page in the nav) and so forth. Sure, you can write these things yourself but by the time you've done that, you may as well use a CMS. Thankfully, there's always a middle ground and there are a million-and-one frameworks and tools to help build websites.
In the past few years, so-called 'flat file' CMSs have become very popular—straddling the divide between more client-friendly CMSs such as Wordpress and more developer-oriented frameworks. One such flat file CMS is Kirby.
What's a flat-file CMS?
Traditionally, CMSs provide users with the means to create, edit and organise the content of their website. This will typically include some sort of WYSIWYG editor alongside tools for uploading images and other media. This content is stored in a database which is then loaded into a web page when a user requests it.
Flat-file CMSs forgo the database and (to a certain extent) the client-friendly editing tools in favour of storing everything (that is text) in good old fashioned text files. Central to this is a format called Markdown. Markdown is basically a way of writing content in plain text with basic formatting available to insert hyperlinks and other things you will include in a websites' copy. Kirby provides the means to get that content from the files for display on the website via some really intuitive tools. It's pretty simple on the surface but really quick to develop with, perfect for smaller websites and we highly recommend giving it a go.
Using Kirby allowed us many of the development advantages of using a CMS, but by keeping the content editing internal it gave us the opportunity to build a great site focused on content rather than control, and maximise the budget. Another (unexpected, but positive) side-effect of not using a traditional CMS is that we can form stronger partnerships with our clients and be more proactive in them adding content to their website.
This was a bit of an experiment and really worked out for us but wasn't without hiccups. We're big fans of a 'content first' approach and this becomes even more important when you are responsible for content-entry on the website. However, there are always amends to be made over the lifetime of the website development as the client tweaks their copy ready to present to the world. If you're going to go down the 'no CMS' route, we'd recommend doing as much editing (and proofing) of content up front as possible in order to minimise the inevitable last-minute tweaks.