The main purpose for this project, it's provide a simple starting point for building 'on-demand/rideshare taxi' ionic application ( something like Uber, Lyft or Sidecar .. ) or more generally, applications using extensively Google Maps JavaScript API.
When you start the app, you see a map centering around your location, with a marker permanently fixed to the center of map. When the user stop moving the map, an InfoWindow shows the new position. To achieve this, I use google maps geocoder service along with rxjs, that let you easily handle 'OVER_QUERY_LIMIT' response ( API Usage Limits ).
** Build configuration and test setup is heavily inspired from this great Ionic 2 boilerplate, take a look here. **
If you are looking for a more complex and complete Ionic 2 app sample, check out here.
Note: This project is under development.
- Ionic 2 Final: https://github.com/driftyco/ionic
- TypeScript
- RxJS
- Webpack
- Yarn for fast, reliable, and secure dependency management.
- BetterScripts for better NPM scripts.
- tslint
- Codelyzer
- Typedoc
- NVM to manage multiple active node.js versions
Make sure you have Node version >= 6.X and NPM >= 3 (node.js version used 7.5.0 and NPM v. 4.1.2)
# Clone the repo
$ git clone https://github.com/ddellamico/ionic2-taxi-app
-----
# change directory to our repo
cd ionic2-taxi-app
-----
# install the repo with yarn
yarn
-----
# restore plugins and platforms
cordova prepare
-----
# start the server (webpack-dev-server)
npm run dev
go to http://0.0.0.0:8100 or http://localhost:8100 in your browser
$ npm run dev --> Run ionic serve ( development )
$ npm run build --> build files inside www folder ( production )
$ npm run test --> run test with Karma
$ npm run ios:dev --> start ios simulator (ionic run ios)
$ npm run ios:release --> build files for ios platform and generate xcodeproj (ionic build ios)
$ npm run android:dev --> start android simulator (ionic run android)
$ npm run android:release --> build files for android platform and generate apk (ionic build android)
Follows AngularJS's commit message convention
# Lint and execute tests before committing code.
npm run commit
# OR
# use git commit directly with correct message convention.
git commit -m "chore(ghooks): Add pre-commit and commit-msg ghook"
$ npm test
You can check the changelog here
- Add more test with karma
- Add protractor (E2E testing)
- Add HMR
MIT