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
// 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
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.
- Go to the Google Developers Console
- Select your project or create a new one (and then select it)
- 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
- 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
- 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)
- Share the google sheet doc (or docs) with your service account using the email noted above
npm run start