heimerdinger is a small application that collects, persists, and visualizes data accessed through the League of Legends API using d3.js.
You will need at least node.js including npm, and a running postgreSQL instance. You can download postgreSQL here. Create a postgreSQL instance at localhost, using the standard port 5433. You will need the database schema. You can download it using this link.
Clone this repository and go into its local directory. Heimerdinger will make use of your API KEY key to access the riot API. We recommend using a bash like the OSX Terminal (if you are using Windows, we recommend the git bash). Add your API KEY to your .bash_profile using the following command:
export API_KEY=<<YOUR_API_KEY>>
Run the following commands:
npm install -g grunt-cli
npm install -g bower
npm install pg
npm install basic-logger
npm install
bower install
Note taht if you are behind a corporate proxy, you need to configure this in bowers .bowerrc-file.
After that, you should be able to start the server using the following command, which starts the backend server:
node src/server/server.js
If it is up and running, you can start the client, which connects to the backend and retrieves data through it:
grunt serve
The client starts your browser and shows the data. The experience is best using Google Chrome. Especially the Internet Explorer does not work properly with SVG.
We recorded a little video to show you the core features. Have fun watching! :)
We are using Grunt to run tasks like grunt-watch, grunt-connect, grunt-wiredep. Furthermore we make use of Bower to keep the App clean from imported libraries.
CSS and page styling stuff is done using Bootstrap.
Our backend is a simple Node Connect server using http.
Visualizations are done with the really great library D3.
We had tons of fun creating this project, I hope you enjoy it aswell! :)