Awesome
Flatware
Flatware provides a tiny S3 buffer between you and Google Spreadsheets, protecting you from downtime, lag and the terrifying caprice of Mountain View. It's meant to be used with Tabletop.js.
Alternatives can be found in Tabletop.js's /caching
directory.
The Whole Shebang
Step One: Get a Heroku account and install their Toolbelt nonsense
Step Two: Get an Amazon Web Services account and create an S3 bucket
Step Three: Clone this repo and push it up to an Heroku instance
git clone git@github.com:jsoma/flatware.git
cd flatware
heroku create
git push heroku master
Step Four: Set up your environment to reflect your S3 info
heroku config:add AWS_ACCESS_KEY_ID=xxx AWS_SECRET_ACCESS_KEY=yyy AWS_BUCKET=zzz
Step Four Point Five: If you're using the old version of Google Spreadsheets, set the following environment variable:
heroku config:add FLATWARE_USE_OLD_SHEETS=true
Step Five: Visit your page and add a Google Spreadsheet. Maybe just use this one down here:
https://docs.google.com/spreadsheet/pub?hl=en_US&hl=en_US&key=0AmYzu_s7QHsmdE5OcDE1SENpT1g2R2JEX2tnZ3ZIWHc&output=html
Step Six: Process the JSON to S3, using either heroku run rake flatware:process
or clicking the Sync all spreadsheets button.
Step Seven: Edit a Tabletop.js file to reflect your new cached set of data on S3. Try /examples/proxy/index.html
and changing proxy: 'https://s3.amazonaws.com/flatware-live'
to reflect your bucket
Step Eight: If you'd like, you can use Heroku Scheduler to automatically run your rake
task every X minutes.
Me?
Hi, I'm Soma, I make things. Questions/comments/tiny daggers can be shot to @dangerscarf or jonathan.soma@gmail.com.
Flatware was made over a harried afternoon so pull requests are more than welcome.