Recently, we took a quick look at five content management systems that, although less well-known than WordPress and the more mature platforms, are worth the consideration of developers and designers because they break with the legacy models of CMS design and rethink the aesthetics, interface choices, development patterns, and user experience of content management.
Statamic was among the modern content management systems we highlighted, and today we’d like to take a closer look at the features that make Statamic stand out from the crowd.
Statamic’s name is a portmanteau of static and dynamic, and it’s worth pointing out that Statamic is not a static site generator like Jekyll or OctoPress. Pages are generated on-the-fly using PHP, as with other dynamic content management systems.
Flat-File Content Management
The traditional model for content management design makes heavy use of relational databases like MySQL for storing content. Statamic disposes of the requirement for a database; instead, it simply stores content as files in a folder hierarchy.
Flat files have numerous advantages when compared to content stored in databases. Not the least of which is the ability to directly edit the content files on any device that supports plain text editing and have those changes immediately made available to site visitors.
It’s also possible to manage Statamic content files with a version control system like Git, or even a third-party service like DropBox.
Markdown And YAML
Much as with Jekyll, Statamic pages are plain text files written in a mixture of YAML and Markdown. YAML is a very simple format for providing metadata about content, and Markdown is a straightforward and flexible markup language that was designed to take the complexity out of writing for the web. Both are very easy to learn.
If you’re used to dealing with WordPress themes, Statamic’s templating system will be a breath of fresh air. ExpressionEngine users will be more familiar with how thing are done in Statamic. Rather than having to write PHP code into a theme, Statamic makes available a comprehensive template language that uses template tags to build sites.
For anyone with a bit of web design experience, the template language should be easy to grasp, and since templates are just plain text files, it’s a doddle to create new site layouts. In fact, it’s simple to incorporate Statamic into an existing design by simply adding some template tags to the HTML.
A Flexible User-Friendly Control Panel
While it’s not actually necessary to use a control panel with Statamic — everything can be done with a text editor — many people are more familiar and comfortable using a dedicated graphical interface. The Statamic developers have spared no effort in producing a beautiful, flexible, and responsive control panel. The control panel is fast and functional, even of devices like the iPad, which is less than a pleasure to use with other CMS control panels (We’re looking at you ExpressionEngine).
As Statamic founder and developer Jack McDade pointed out in our previous article, Statamic’s control panel includes over 20 different fieldtypes, which make it straightforward to manage content and markup from within the control panel.
The combination of an well-designed control panel with an advanced template language and flat-file content organization make Statamic a pleasure to use for both developers and their clients, with no compromises being required of either.
If you’re interested in Statamic, you should check out the video below, which explains how to build a simple blog, and then head over to Statamic’s excellent documentation.
Statamic is a modern, innovative, and well-designed content management that is suitable for most sites and can be hosted on any server that supports PHP 5.3, including ours.