<- Home

Introducing GCMS

A CMS based on Google Docs and hosted on Google App Engine

Tags: google docs, cms, google app engine, open source, mit

Overview

I wanted a way to publish long-form content on my own domain using tools I’m familiar with at a low cost - preferably free. I also wanted something that allows me to invite collaborators to provide feedback and that works on all my devices so I can create content whenever I’m in the mood for it regardless where I am.

This is still work in progress, but the words you are reading are published through GCMS.

Step-by-step setup

Prerequisite: You will need a free Google Account. You can create one here.

  1. Head over to Google’s Cloud Console and create a new project here
  2. Create a new Service Account by going here and selecting Create Service Account at the top
  3. Download a new private key in JSON format
  4. Copy the Service Account ID (looks like an email address)
  5. Create a new folder in Google Drive and share it with your service account
  6. Create a new Google Doc in the same folder and name it 0-landing-page
  7. Now head over to the API Manager, select Google Drive and enable it here
  8. Open your Cloud Shell here
  9. Clone the git repo and enter it
    git clone https://github.com/alpeware/gcms.git && cd gcms
  10. Hit the Files icon at the top and upload your service account’s credentials
  11. Rename the json file to service_account_credentials.json (
    mv ~/THE-FILE-YOU-JUST-UPLOADED.json service_account_credentials.json
  12. Start your dev server
    ./start_dev.sh
  13. Open preview link on port 8080
  14. You should see your landing page
  15. Open Admin Server on port 8084
  16. Launch code editor to make code changes in your browser
  17. Deploy your app
    ./deploy.sh
  18. Choose a region (only the first time)
  19. Update queues
    gcloud app deploy queue.yaml
  20. Update cron
    gcloud app deploy cron.yaml
  21. Open your app in a browser

Subscribe to receive updates.