Relaunch Postmortem - Using Netflify CMS

Netlify CMS is an open source tool written by folks at Netlify that adds CMS features to your static website. Before I continue, I understand how hypocritical it sounds to add a CMS to a Static Site Generator, but the way Netlify CMS works is different than what you might think.

First off, the only assumption Netlify CMS makes about your website is that you are writing your site content as Markdown files containing frontmatter. Beyond that, it has no concerns regarding how you build your site or where you host it. If you are hosting on Netlify, the configuration process is much easier, but there are options available to help you hook it in to any other process. That is great in terms of flexibility, but it is also great because it drives the way the tool is designed.

To use Netlify CMS, all you need to tell it are where your posts are stored, what you put in your frontmatter, and what naming scheme you use for your post files. Then you grant it authorization to hook into github/gitlab’s REST API to make changes to your repository, and you are off to the races. This is what allows it to work with any build/hosting solution, as those concerns are independent to what Netlify CMS is trying to do.

Once configured, Netlify CMS creates a new, secured page on your site that allows you to view, add, modify, and delete posts. The post editor allows you to modify any and all of your frontmatter, and it only allows you to write post content using Markdown. There are a few special buttons you can use to add formatting and the like, but all they do is generate the Markdown for you. When you create a new post, it uses your chosen file naming scheme to drop a new Markdown file into your repository, the same as if you were writing the post on your local PC.

What all of this means is that Netlify CMS is trying to be a web-based alternative to writing posts locally, rather than trying to be a replacement. The content you create, and the way you create it, is no different in one approach than the other. Relying on Netlify CMS will not result in some Wordpress-esque monstrosity that is impossible to export or migrate from. It simply gives you a way to write posts from multiple computers or remote locations.

This is huge for me, as I don’t always like getting on my old, slow, personal laptop to write blog posts. Knowing that I can do them from a phone, or tablet, or even my wife’s laptop will be a huge boon to my writing, as I will be able to write when the mood strikes me, and not have to wait until I am in the right place at the right time.