appboard
appboard is real-time dashboard for your application and business.
Dashboards tell people what's happening and should help them immediately recognize what needs their attention. Just like the dashboard of a car, which provides easily monitored measures of speed, remaining fuel, oil level, battery strength, engine trouble, and so on, a application and business information dashboard provides an overview that can be assimilated quickly.
Further reading:
NOTE: We are currently in private beta. Please let me know ([email protected]) if you'd like an invite.
Gem Installation
Install the heroku gem if you haven't already:
$ gem install appboard
Note that appboard does not require ActiveSupport or Rails. You can safely use it in your own Ruby projects.
Local setup
Before using appboard in your application, you need to let appboard know your API key, you do this (e.g. in an initializer):
require 'rubygems'
require 'appboard'
Appboard.settings ({ :apiKey => "abcd1234" })
or you could define API key in call block:
require 'rubygems'
require 'appboard'
Appboard.setup {
apiKey "abcd1234"
...
}
or,
require 'rubygems'
require 'appboard'
Appboard.push {
apiKey "abcd1234"
...
}
Deploying to Heroku
To use appboard on Heroku, install the appboard add-on:
$ heroku addons:add appboard
You can also do this from the Resources section of your application's configuration page on Heroku.
This will automatically create you an appboard.me account and create an default dashboard, and fill will set the Heroku configuration variables variables ENV['APPBOARD_API_URL'] and ENV['APPBOARD_API_KEY'].
Usage
There is several options how you could use API:
Option 1. Setup new dashboard and pushing data to widget:
require 'rubygems'
require 'appboard'
Appboard.setup {
apiKey "zxcv1234"
('My Clock') {
type "clock"
size "1x1"
}
('First Indicator') {
type "singlenumber"
size "1x1"
}
}
Appboard.('First Indicator') {
data do
{
:current => 10
}
end
}
puts Appboard.('First Indicator').uid # prints widget uid
After seting up dashboard configuration is stored in Appboard class, and widget could be easily accessed by name. For already configured dashboards you could push your data by widget uid.
Option 2. Pushing data to widget by widget UID
require 'rubygems'
require 'appboard'
Appboard.push {
apiKey "zxcv1234"
('widget1') {
uid "abcd1234"
data do
# Data is here
end
}
('widget2') {
uid "poiu4321"
data do
# Data is here
end
}
}
NOTE: Don't forget to specify your apiKey and widget identifier.
What Should My Request Look Like?
Each widget has its own page on our documentation. That page contains all the information you need in order to start working with the widget, including descriptions of data model (a piece that represents some kind of data).
Copyright
Copyright (c) 2011 appboard.me. See LICENSE for details.