For the better part of seven years, eHouse Studio has used—and continues to use—the widely-popular CMS platform ExpressionEngine due to its trusted ability to handle large, content-rich websites and ease of scaleability. Each year, we take some time to audit our use of tools ensuring the proper selection for each of our clients' needs. As you may have noticed in our retrospective look at 2014, with the introduction of a new brand and redesigned website, we explored a new CMS platform that has gained the attention and respect of many of our esteemed industry peers named Craft.
Hello, my name is Craft
Craft is a small, yet mighty, CMS developed by Pixel & Tonic, the folks that brought us some of our most used—and arguably most favored—ExpressionEngine add-ons. It is built on the PHP framework Yii and leverages the robust template engine Twig. Craft is a platform designed and developed to accommodate your content. The fellas at Pixel & Tonic don't make any assumptions on how we are going to use their tool, and because of that, it is incredibly powerful. Based on my experience with Craft, it's clear that P&T set out to build a platform that responds to the pain points experienced in other platforms—which we certainly appreciate.
We've been using Craft for a few months now and so far we really like what we've seen and think you will too. The team at P&T are constantly releasing updates and offer fantastic support.
Craft 3 is seemingly around the corner and we can't wait (myth debunked). Until then, here are a few features from current version of Craft that we've really grown to love.
Responsive Control Panel
You have this fancy new responsive website but you can't edit the content on the run? Seems to me like a double-standard. Craft takes this head-on with a beautifully designed responsive control panel. The next time you're sitting on the beach sipping on a mai tai and you need to update a key piece of content, Craft has you covered! Disclaimer: I do not encourage working while on your beach vacation.
We've all been there before. We're ready to test a blog post and have to jump through the hoops of viewing a unique preview URL or setting a status to "preview only." Live Preview allows you to see edit your content and see the rendered front-end side by side updating in real time as you type. Designing and editing pages has never been so quick and easy!
Literally one click. How cool is that? In about 30 seconds, the CMS is updated with the latest features, bug fixes, and security improvements. This saves countless hours of downloading the update, backing up the database, uploading new files, etc.
While this isn't a tangible feature, per se, it is in fact one of the best and most exciting features of the platform. Custom fields are separated from any of Craft's top-level
ElementTypes; Entries, Users, Assets, Categories, Globals, and Tags. That said, fields can also be created and shared across any of the aforementioned element types decreasing the necessity to duplicate. This cuts down the need to duplicate fields, speeding up development time, and shrinking the size of the database.
We've merely scratched the surface of Craft's extendability—though we do keep a keen eye on what the rest of the Craft community is up to. As is in any platform, Craft does have a few native shortcomings, but this is not always a bad thing. Craft makes it super easy to create a plugin of any shape or size using its extensive set of APIs.
Being avid Medium readers, we like the subtle estimated read time on each article. This is a quick way for a reader to determine if they can read now or if it needs to added to their reading list. From this idea, Read Time was built. Read Time is a Craft plugin that parses the content of a Rich Text field(1) and estimates the reading time based on word count and average reading speed.
Where We Go From Here
We're anxiously awaiting the release of Craft 3 and we have a few more plugins that we will announce over the coming weeks. We're looking forward to the continued exploration of Craft and adding it to our repertoire of tools to better serve our clients.
In the meantime, we closely follow the #craftcms hashtag and have an active presence on the Craft CMS Stack Exchange Q&A site. We are also looking to start a user group for Craft developers and interested tinkerers in the Charleston area.
1.) The current version only supports the Rich Text field. We will be adding support for Longform Content with Craft Matrix in the future.