I’ve been hinting at the dashboard application I’ve been hacking on recently and after showing it off to a few people at the Scottish Ruby Conference it’s about time I released it open source.

Introducing edash

edash screenshot

This is the version currently running on a screen at Eden.

IMPORTANT NOTE: This application only works on Chrome. There is enough browser specific hackery to render it unusable in other browsers currently. Patches to fix this are most welcome.

That said, I’ve put together a short screencast showing it off, along with how to get it running:

</embed>

edash demo and usage instructions from Chris Parsons on Vimeo.

Getting it running

Here’s a minimal set of steps to get it running:

gem install sinatra haml json eventmachine em-http-request
git clone git://github.com/edendevelopment/edash.git
cd edash
git submodule update --init
# runs the websocket server, make sure port 8080 is readable from where you are. Use nohup to run as a daemon.
scripts/server &
# Run rackup in place, or use your favourite rack-compatible server
rackup &
# post a message to the server. Add a form of this to your build hooks.
curl -d "project=<project>" -d "status=<pass|fail|building>" [-d "author=Name <email>"] -- http://localhost:9292/build

Check out the screencast for a walkthrough.

Under the hood

The code is on github.

Check it out and let me know if you find it useful. I’m trying to keep it pretty thin and build server agnostic: it should work with a number of build servers out of the box just by configuring (hacking) your server to fire off HTTP posts as shown in the screencast.

I’d welcome patches and fixes: it should be under fairly active development in the next few weeks. The plan is to add a generic statistic tracking module that will allow us to keep track of MetricFu stats, and you to keep track of almost anything… watch this blog for updates.