Vancouver Rental Issues Data - Scripts and Dashboard
JavaScript CoffeeScript Perl Ruby
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.

This project is to make a very basic example dashboard using some Vancouver Open Data.

When designing a dashboard, it's important to consider 3 things:

1 What is your Goal? 2 What is your methodology? 3 Something else.

The goal of this project is to provide a simple example codebase for other dashboards. Using the Dashing framework, we can create exceptionally handsome dashboards.

This particular dashboard uses the Vancouver Rental Standards data:

After reviewing the data, I brainstormed some of the dashboard widgets that I could build using the data I had available. The first step was to shape the data into a structure that would be summarized for display in the widgets.

Unfortunately, the JSON file on the open data portal does not include all the data we need. So we need to scrape some HTML from a city search tool to get the individual rental infractions.

bin/scrape - this is used to grab the JSON, and then scrape the HTML form.

The output of bin/scrape is data.json.

With the data downloaded, we can then convert it into the metrics we want.

We use bin/parse to read data.json and analyze/sum/count the data into metrics.json.

Then our Ruby dashboard can read metrics.json and show the results on the dashboard.

In order to update the data, one would need to run bin/scrape then bin/parse, then re-start the dashing process to read the latest JSON file. Obviously you could design this better so that the Ruby process did the scraping and parsing periodically, or polled other APIs.

For future projects, you'll probably need to scrape/parse your data. This project is intended as a reference only, it's probably not suitable for directly copying. That's okay, none of this is too difficult.

To learn more about the Dashing framework, check out

Yours Truly, @lukec