Web developers have a lot of tools at their disposal, one of them being Content Management Systems (CMS). There are many different flavors of CMSs. Some cost more and are mainly used for enterprise clients like Sitecore, and others are free, open source options like Wordpress. If you're looking to get a blog up and running quickly, Wordpress is probably the right tool for the job. It's especially good for the nontechnical user. However, if you're looking to manage a wider variety of content by using relationships or having a more flexible custom layout, other options may be a better fit. One of these options is CraftCMS.
Compared to many off-the-shelf CMSs I have used, you don't need a ton of plugins for Craft. That's not to say there isn't a good collection of third-party plugins, you just don’t need them for every site you build. Here is a list of features that come native to Craft that sometimes require plugins with other CMSs:
- Versioning and drafts
- Live preview
- Image resizing
- Using a CDN for assets
- User management
CraftCMS gives the benefit of less reliance on third-party plugins which makes updating the site even easier. It also doesn’t hurt that Craft requires only one click to update the core.
From a developer’s perspective, it’s great that once you update the core files, you just have to visit the control panel to run migrations. This makes updating the core a breeze across multiple environments.
In addition to having community support and a Stack Exchange site, there is an actual company behind Craft, Pixel & Tonic. That means that you can talk directly to the people who you paid for the product. If you have a bug, you can use the form on the dashboard of the control panel to send them a message along with error logs, database backup, and template files. Have a random question? Tweet it out, and they will respond to you quickly (along with other Craft community members).
Another great feature, from a development standpoint, is the CraftCMS built in templating engine. Craft uses Twig. It’s really clean, simple to use, and it’s not proprietary. Find something that Twig doesn’t do out of the box? It’s easy to extend. My favorite part of Twig is that it is 100% bring your own HTML. You don’t have to work around HTML that is automatically generated. You are in control of it all.
Twig syntax is very familiar, elegant, and easy to read. It also doesn’t hurt that, if you do have a typo, you get an error message that tells you exactly which line has the error.
Out of the box, Craft supports multiple environments. This is an absolute must for any CMS so you can develop the site locally, deploy to a staging environment, and then deploy to production. This makes it much easier to build new features and preview them to clients before putting them on a production environment.
The popularity of CraftCMS has been steadily rising the past couple years and has won awards for Best SMB CMS (2014) and Best CMS for Developers (2015). There are big companies as well that use CraftCMS. AirBnB, Foursquare, Salesforce, and Oakley just to name a few.
There are many CMS options available, each with their own pros and cons. Craft is a general use commercial CMS that is built with the developer in mind. If you’re looking to manage a wider variety of content than a standard blog, Craft CMS may be a good fit. It’s flexible, clean, most of the functionality you would need comes packaged with the base install, and managing a variety of content does not get any easier. Depending on your content management goals, CraftCMS could be a great solution for you.