I made this to brush up on starting a project from scratch. I liked interface Garmin already has for displaying all my GPS running data but I decided it would be a fun experiment to see if I could do a slightly different take on the data.
To challenge myself I also decided to try to implement the basic scale component using various frameworks. This is the React version, you can see the AngularJS(1.5) version here: https://github.com/eacaps/runspeed-map-angularjs.
Running this app requires git and a relatively recent version of node and npm.
$ git clone git@github.com:eacaps/runspeed-map.git
$ cd runspeed-map
$ npm install
$ npm start
This will start the app at http://localhost:3000/.
$ npm run dev
Dev mode for this runs watchify to catch changes to the client side files. I went with browserify for now since it is easier to manage for simple projects - its command line based instead of webpack's config file based system.
jest and jasmine will be incorporated soon :(
I actually dove straight into this before looking at the tcx file format. I just grabbed the first thing that came up for tcx - https://github.com/mapbox/tcx and used that as my parser. As it turns out, I actually lose some data fidelity using that parser so the next thing on my list of TODOs is re-writing the tcx parsing and segment creation to use: https://www.npmjs.com/package/tcx-js.
If you have another other sample data from other platforms you'd like included just hit me up with an issue or a pull request.