What is a Flat-File CMS (& Should Freelance Writers Use Them?)

What is a flat-file CMS and should freelance writers use them? - FreelanceWritingPros.com

If you have a professional freelance writer website, you likely used a content management system — or CMS — to build it. The most popular CMS today is WordPress. But you have another option you might not have heard of yet — the flat-file CMS.

I mentioned flat-file content management systems in my recent post on revenue sharing schemes over at All Freelance Writing. More specifically, I noted that my plan over the next couple of years is to move my smaller sites off WordPress and onto a flat-file CMS.

If you aren’t familiar with them yet, let’s look at what a flat-file CMS is, what some of the pros and cons are, and why you might opt to move in this direction.

What is a Flat-File CMS?

Before we get into what a flat-file content management system is, you need to understand two other terms.

  1. Static Websites — A static website is one that doesn’t rely on a database to pull content together when someone loads a page.
  2. Content Management Systems (CMS) — A CMS is an interface that allows you to manage your website without having to write code directly.

WordPress is an example of a CMS, but it doesn’t create static websites. It creates dynamic websites. When visitors load a non-cached page, multiple database queries will pull in the content (your header, your footer, your post content, your comments, etc.) to create the resulting page the visitor sees.

A static website would be more like a hand-coded HTML site where you upload your CSS (stylesheets) and HTML pages into a folder structure on your server. If you want to change a post, you update it on the server or update a local copy and re-upload the changed content.

A flat-file CMS gives you something more akin to that static HTML website, but with the convenience of a content management system so you don’t have to code everything or work heavily within the server’s file system.

Benefits of Flat-File Content Management Systems

Why, and when, might you want to use a flat-file CMS? Is there any benefit to you as a freelance writer?

That depends on the kind of website(s) you want to run. If you’re running extensive niche blogs with hundreds or thousands of posts, it might not be the best system. But if you’re managing a professional website, it could be a good fit.

Some benefits of working with a flat-file content management system are:

  • no database queries;
  • no database management;
  • simple backups (just compress and download your site’s file structure);
  • simple migrations between hosts (just download your files from the old host and upload them to new one);
  • fast-loading pages (important because website speed factors into SEO, and slow pages drive visitors away);
  • fewer server resources are needed (which could be important if you use shared hosting);
  • easy content management with an admin interface;
  • the ability to write in markdown or with a WYSIWYG editor (depending on the platform);
  • access to site templates to help you with design;
  • greater security (no database to hack to steal information easily, and no way to inject malicious content sitewide via a database).

Flat-file content management systems are also pretty easy to understand.

If you’ve ever used a file system on your computer, and if you’ve ever used something like WordPress’ admin interface, you already get the basic gist of how they work.

You’re simply using an interface to create content that then gets saved in the file system you choose.

Downsides to Using a Flat-File CMS

That’s not to say a flat-file CMS is the right call for every freelance writer. There are downsides, as with any option.

But most problems would only affect you if you run a very large or complex site where you need to manage user accounts for a membership site or where there’s so much content and traffic you would need multiple servers (such as one for the database and another for basic site files and static resources).

Focusing on a typical freelance writer website though, possible downsides would be:

  • difficulty later changing file structures (like moving a lot of posts to different categories);
  • not having a simple way to add advanced site search (though there are workarounds like plugins and adding a custom Google search engine to your site);
  • learning the template engine your flat-file CMS uses, such as Twig (this is how your CMS’ templates are built, much like the .php files you get in a WordPress theme);
  • not being able to add as many custom features (like an interactive client booking calendar) to your site unless a plugin exists for your CMS (and there will be far fewer plugins than you might be used to with WordPress).

In general, these shouldn’t be big factors for most freelance writers’ professional websites. These are often just a collection of pages, maybe a contact form, and a blog.

Running a Blog on a Flat-File CMS

I can hear it now:

“Hold on Jenn. Don’t you always recommend freelancers add a blog to their professional sites?”

Why, yes. Yes I do.

“Then how would I do that if a flat-file CMS creates a static website?”

Good news! You can run a blog through a flat-file CMS.

At this point, I wouldn’t recommend it for very large, complex blogs that require membership settings or have a lot of custom features. I wont be moving All Freelance Writing over to one any time soon for instance.

But you can absolutely set up a blog with your professional site using these tools.

In extremely basic terms, when setting up your folder structure, you would simply create a folder called “blog.”

Then, when you write blog content in the admin interface of your flat-file CMS, each post’s content would be saved as its own file in that “blog” folder.

How comments are handled will depend on the CMS you choose, and that might require a plug-in. But whether or not you want to allow them is up to you. I recommend it, but you do you.

Intrigued by the idea of using a flat-file CMS in your next site redesign? Looking for a way to speed up your site or use fewer server resources? Hacked in the past and looking for a more secure option?

In coming weeks, I’ll set up a test site using either Pico or Grav, both open-source (free) flat-file CMS options. And I’ll publish a follow-up here giving you a walkthrough as an example of how you can set up a website of your own using one of these tools. (I might do both if there’s enough interest after the first.)

On a related note, a flat-file content management system would be a great option to set up a “quiet site” of your own for passive income.

In the meantime, you can visit the sites for either CMS option linked above to browse their documentation, themes, and plugin options to get a better feel for which might work for you. If you have a preference as to which you’d like me to use in the coming demo post, leave a comment to let me know.

Get more content like this in your inbox.

Subscribe to the Freelance Writing Pros newsletter to get notified of new blog posts and receive subscribers-only content.

Newsletter - Main
Avatar image for Jennifer Mattern

Jenn Mattern is a professional blogger, freelance business writer, consultant, and indie author. She runs numerous publications, a few including Freelance Writing Pro's sister site All Freelance Writing, NakedPR, and Kiss My Biz.

Jenn has over 20 years' experience as a professional writer and editor, more than 20 years' experience in marketing and PR, 19 years' professional blogging and digital publishing / web development experience, and around 17 years' experience as an indie author / publisher.

Jenn also writes fiction under multiple pen names and is an Active member of the Horror Writers Association.

1 thought on “What is a Flat-File CMS (& Should Freelance Writers Use Them?)”

  1. I’m disappointed to have to post this, but while I still love flat-file CMS alternatives in general, and while they could be good for freelancers not looking to set up frequently-updated sites, my testing with Grav has disappointed. I’d hoped for a while to share a case study here of setting up one of my “quiet sites” using Grav. But the project stalled because I just didn’t like working with it.

    You have to remember I come from a dev-heavy background. I’ve mostly built on WordPress, but I can also quickly code up a simple HTML/CSS site in hours. And now with AI tools and a solid prompt structure, I can get the base code out and on my server in literal minutes.

    Because of this, the in-between nature of Grav just doesn’t work for me. Because I haven’t used it much, it took more time than either WordPress or hand-coding a site, and definitely longer than using AI assistance. So I’d moved on with other projects and let that test case sit because I simply didn’t enjoy the process, and it didn’t make sense to adopt the tool in my particular case.

    If you’re looking to get off database driven CMS options, still check out Grav and other flat-file CMS alternatives, especially if you’re not looking to code sites from scratch. It’s still a good in-between, even if it’s not for me.

    Reply

Leave a Comment