This project is the result of our first hackathon in Chamonix! We wanted to build an app that was genuinely useful to the people who live and work in Chamonix, and we felt that a full bus and train timetable would be a good way to do this.
We've open sourced the project to get contributions on all aspects. Here are the technical details first, though:
The app is built in angular.js with the Ionic framework for native-like UI elements and easy local testing on top of ng-cordova and Cordova / PhoneGap
We've gone for storing the data using Web Database and html5sql.js. We know that it is a deprecated standard, but the PhoneGap v3.5.0 page shows compatibility, which is fine with us for the time being. We wanted to use something that we were familiar enough with, i.e. SQL, to make progress quickly. We've structured the data in the Google GTFS transit format so that we had an existing and tested structure for storing all of the bus lines, times, stops, etc.
The app retrieves the data from our server initially. This means that we can update the bus timetable as and when it changes, or if we have any errors in the data that we've collected.
You'll need npm, then install Cordova and Ionic, and set up emulation (as per the Ionic getting started guide).
npm install -g cordova ionic
ionic platform add ios
ionic build ios
(or)
ionic platform add android
ionic build android
Then you can kick off an iOS emulation: ionic emulate ios
Or just fire it up in the browser: ionic serve
GetAroundChamonix is licensed under GPL-2. See LICENSE for more details.