Skip to content

vprnet/summer-festivals

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

42 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

VPR Summer Festival Page

This repo holds the code for VPR's Summer Festivals Page.

Notes on the Project

The steps to get set up are here:

One-time set-up work:

  1. Make sure you have Python 2.7 installed.
  2. Clone the repo locally. git clone git@github.com:vprnet/summer-festivals.git
  3. Install pip
  4. Install virtualenv. pip install virtualenv
  5. Create a virtual environment for the app. virtualenv venv
  6. Install the app requirements. pip install -r requirements.txt

Regular Updates, start here:

  1. Change into the project directory. cd summer-festivals
  2. Enter the virtual environment. source venv/bin/activate
  3. To run locally, just hit a quick python app/index.py and head to 127.0.0.1:5000, but know that it will all be broken until you follow the Google Spreadsheet steps below.
  4. To push to production on Amazon S3, run python app/index.py build.

Notes on Interacting with Google Spreadsheets

The project is hooked up to a Google Spreadsheet that VPR producers and editors can populate. If you're interested in cloning this project, you'll need your own Google Spreadsheet to get started.

We use gspread with the Drive API to connect our spreadsheet to the app. Here are a few things to know about the implementation:

  1. To start a new project, head to the Google Developer's Console.
  2. Click create a project. Give it a name.
  3. Click Enable and manage APIs.
  4. Under Google Apps APIs click Drive API and Enable.
  5. Click Go to Credentials.
  6. Create Credentials.
  7. Create service account key, and select New service account. Give it a name.
  8. When you create, you'll see a JSON file incoming. Save that file to your project directory. Add it to your gitignore if your code is going anywhere public.
  9. The json file is what gets loaded and opened in sheet.py. Make sure the names match!
  10. Create a Google Spreadsheet through your Google Drive. Make sure your spreadsheet title is exactly what's trying to be opened in sheet.py's authorization.open("") line.
  11. You may need to share your Google Spreadsheet with the email provided in client_email.