Skip to content

chrishunt/status-board

Repository files navigation

Status Board

Your very own status board API

For use with the Panic Status Board

Getting started

Your status board is already setup! Pull it down, deploy it on Heroku, and take a look.

$ git clone https://github.com/chrishunt/status-board.git
$ cd status-board
$ heroku create
$ git push heroku master
$ heroku open

What APIs do I get?

I made these APIs to help me watch folks listen to Healthy Hacker, so right now, all you get is Chartbeat Analytics and Libsyn Podcast Hosting.

Want more? Woo! Me too. Add your own and send me a PR.

Chartbeat Analytics

GET /chartbeat/summary/:host

Table summary of current visitors for :host

GET /chartbeat/visitors/:host

Count of current visitors for :host

GET /chartbeat/historical/:host

Hourly graph of total/returning visitors for :host

Libsyn Podcast Hosting

GET /libsyn/today

Count of total downloads for today

GET /libsyn/recent

Count of total downloads for latest episode

GET /libsyn/history

Graph of total daily downloads

GET /libsyn/totals

Graph of total downloads for each of the last 3 months

Configuration

Chartbeat Analytics

If you'd like to see Chartbeat Analytics, you'll need to add a Chartbeat API key to your Heroku environment. You can generate one with the correct permissions on the Chartbeat API key manager. Make sure you generate a key that works with all domains that you want to monitor.

$ heroku config:set \
  CHARTBEAT_API_KEY="YOUR_CHARTBEAT_API_KEY"

Libsyn Podcast Hosting

Libsyn doesn't actually have an API, but it does let you download many different CSV summaries. We download these CSV summaries for you in the background, parse them, and make them status board friendly.

You'll need to configure Heroku with your login email, password, and show ID.

$ heroku config:set \
  LIBSYN_EMAIL="YOUR_LIBSYN_EMAIL" \
  LIBSYN_PASSWORD="YOUR_LIBSYN_PASSWORD" \
  LIBSYN_SHOW_ID="YOUR_LIBSYN_SHOW_ID"

If you don't know your show ID, visit the stats page and you'll see it in the URL:

http://four.libsyn.com/stats/general/target/show/id/:show_id

How do I make my own?

Status board supports 3 types of custom panels:

To create your own panel, wrap the API of your choice and output in one of the three supported formats. For an example, see how we do it for Chartbeat.

After you have the wrapper, add a route in app.rb

Contributing

Please see the Contributing Document

License

Copyright (C) 2014 Chris Hunt, MIT License

About

Your very own status board API

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages