Back to all posts
CMSGoogle DriveDevelopment

Google Drive as a Content Management System

Sean McClure

3 min read

Okay, yeah, I hear you, but there are dumber ideas.

We love Google Docs. It’s the first tool we reach for when we need to write up some content. It’s easy to spin up a spreadsheet or a Google Doc of your thoughts, ideas, aspirations, frustrations, manifestos, whatever.

Lot’s of companies’ MVPs are just a collection of Google Drive assets–it’s a fast, easy way to validate your ideas. This was true for my previous job, CovidActNow.org, which started as a Google Sheet SEIR model and some explainer Docs. It’s true of Levels.fyi, who used a Google Sheet backend up to over a million users. Even in non-early stage scenarios, some news companies use spreadsheets as a way to power widgets, maps, charts, etc.

There’s a real middle-ground to serve here. Early-stage companies want a polished, customized look and feel without devoting hours to setting up their own infrastructure.

Okay, so why would you use this?

Familiarity

Google Drive is familiar to your content people. You don’t need to spend time training them how to interact with a new shiny CMS, or have them remember extra passwords, or get stuck because they can’t figure out how to format text.

Moving Fast

Your developers don’t have to worry about any backend infrastructure. They don’t need to deal with creating users and authentication. They don’t need to handle database migrations or upgrades. Google Drive becomes your backend so they can spend all their time polishing your frontend.

How does it work?

Creating a Post or API

Basically, you paste a Google Sheet or Google Doc URL into your dashboard, and we return an API URL that exposes that content. All your Posts and APIs are manageable through your dashboard, and you can create organizations to share posts among your team.

Sheet APIs

Your Google Sheet content is returned as a JSON response, and updates automatically every set interval (you customize this yourself!)

Document Posts

Your Google Doc content is returned as markdown and only updates when you manually republish the post.

Integrating with your frontend

Using your content API URLS, you can wire this data up to your frontend.

Your JSON Google Sheet APIs can be used to populate charts, maps, widgets from any framework that allows axios/fetch requests.

Your CMS posts can be integrated with any frontend system that supports Markdown rendering. For Next.js this can be done easily using MDX. I’ll probably make a guide on this at some point

Not for everyone

Yes, if you’re a bank re-architecting your payment services, please don’t use this. If you’re a large news organization who needs rich customization and organization, maybe it’s not for you either.

There are other limitations, too. As a headless CMS, developers may be needed to wire up new pages into the frontend. Size restrictions of Google Sheets might limit you if you have a lot of data.

But if you’re trying to ship something fast and just keep moving, maybe this is perfect for you!

Or maybe not?

Who knows.

FWIW, this blog is using Jedwal *(here’s the Google Doc as proof!), so maybe give us a shot?*