SheetsCMS - A simple free CMS built on top of Google Sheets

This project came about because it seemed to me that Google Sheets could be a viable database on top of which multiple small applications can be built.

In this case, all you have to do is edit a Google Sheet in the specified format and the content gets rendered as a web page. Pretty cool right? The part I like is that Google Docs and Sheets have excellent sharing, access control and revision history capabilities. So you get a whole lot of extra without having to build that yourself. For example, I could just share the GDoc with someone else and they can edit the content to their heart's content :)

I think something like this would be incredibly useful for a lot of small and medium business owners who just want to update their pages once every few months. While they could use something like Wordpress, there will be some who'll appreciate the ability to update their website from a good ol' Excel interface. And the updates are immediate, since the 'CMS' is just rendering the Google Sheet's JSON.

In case you're wondering, here's the source Google Sheets file for this page.

So how does this work?

Quite simple actually. You create a Google Sheet like this one. Then you upload two PHP files to your server. And finally, add the Google Sheet's unique ID to your PHP file.

Inside the GSheet book, you need three sheets: 'markup', 'styles' and 'includes'. Doesn't matter what you name them, but the order is important.

  1. sheet 1 - must contain the html markup
  2. sheet 2 - could have some styles
  3. sheet 3 - could have a few 'includes' or 'defaults' like page title, your Google Analytics ID, any external stylesheets or scripts that you may want, and also any Google Fonts you want to include
Here's what the markup looks like.

The 'styles' sheet is also self explanatory. For 'includes' the commands currently supported are:

Some people asked and yes, it is free!