Skip to content

Produces an easy-to-browse session listing site based off a Google Spreadsheet. Updates live when the spreadsheet is updated.

License

Notifications You must be signed in to change notification settings

chriswhitehouse/unconf-live-session-grid

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

63 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Unconference live session grid

Produces an easy-to-browse session listing site based off a Google Spreadsheet. Updates live when the spreadsheet is updated. Made by Convivio

Demo spreadsheet: https://docs.google.com/spreadsheets/d/1uyeVc73aeKG8xgHvUzqR_WYbr3WPhsrk9gj746Mayac/edit?usp=drive_web&ouid=101644837907742352061

Deploy

Environment settings

// Required: Google Developer Authentication settings 
UKGC_PRIVATE_KEY
UKGC_CLIENT_EMAIL
// Required: The URL of the spreadsheet to pull from
UKGC_SPREADSHEET_URL
// Option: The number of seconds to pull new session information from the google sheet
// This is set to 5 seconds by default, increase this if you see the app struggling to serve requests in a timely fashion
CACHE_TIMEOUT
// The url of the logo image to use in the heading
LOGO_URL
// The name of the unconference for headings and meta tags
UNCONF_NAME
// Optionally set the year to filter the sessions by, defaults to current year.
UKGC_YEAR

Setting up your spreadsheet

This tool was originally designed for UKGovcamp and currently follows the structure of their session spreadsheet. We'd recommend cloning that spreadsheet to ensure this works as expected.

If you'd like to deviate from the columns in the spreadsheet and would like support, feel free to open an issue.

Google authentication set up

  1. Go to the Google Developers Console
  2. Select your project or create a new one (and then select it)
  3. Enable the Drive API for your project
  • In the sidebar on the left, expand APIs & Services > APIs
  • Search for "google drive api"
  • Click on "Google Drive API"
  • click the blue "Enable" button
  1. Create a service account for your project
  • In the sidebar on the left, expand APIs & Services > Credentials
  • Click blue "Add credentials" button
  • Select the "Service account" option
  • Populate the Service account name field
  • Click create and continue
  • Under Grant this service account access to the project, select Owner
  1. Set up an API Key
  • In the sidebar on the left, expand IAM and Admin > Service accounts
  • Click on the three dots under Actions
  • Select manage keys
  • Click ADD KEY
  • Click Create new key
  • Select the JSON radio option
  • Click blue "Create" button
  • your JSON key file is generated and downloaded to your machine (it is the only copy!)
  • note your service account's email address (also available in the JSON key file)
  1. Share the google sheet doc (or docs) with your service account using the email noted above

Running the app

npm run start

About

Produces an easy-to-browse session listing site based off a Google Spreadsheet. Updates live when the spreadsheet is updated.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • CSS 51.3%
  • JavaScript 38.4%
  • Handlebars 10.3%