angular-osm

AngularJS lib to make it easier to works with OSM ecosystem


Install
bower install angular-osm

Documentation

Angular OSM

NPM

Travis CI Codacy Badge semantic-release Commitizen friendly

Quality Coverage Status [![Circle CI] circle-icon ]circle-url

dependencies devdependencies

Angular OSM is a set of angular services to use OSM APIs.

Please show me examples

Example : OSM API Source

Example : base64 adapter Source

Example : nominatim Source

Example : oauth adapter Source

Example : osrm Source

Example : overpass Source

Example : taginfo Source

Example : togeojson Source

Example : full Source

How to add angular openstreetmap to my project

First add it to your dependencies:

npm install --save angular-osm

Next it depends what you want to do. The release provide many distributed files:

node_modules/angular-osm
├── README.md
├── dist
│   ├── osm-api.js
│   ├── osm-api.min.js
│   ├── osm-base64.js
│   ├── osm-base64.min.js
│   ├── osm-full.js
│   ├── osm-full.min.js
│   ├── osm-nominatim.js
│   ├── osm-nominatim.min.js
│   ├── osm-oauth.js
│   ├── osm-oauth.min.js
│   ├── osm-osrm.js
│   ├── osm-osrm.min.js
│   ├── osm-overpass.js
│   ├── osm-overpass.min.js
│   ├── osm-taginfo.js
│   ├── osm-taginfo.min.js
│   ├── osm-togeojson.js
│   ├── osm-togeojson.min.js

Each build provides one osm api integration so you can just pick the one you want.

If you want all API just include osm-full.min.js.

So you may need more dependencies dependening on what you want to do. Here is the dependencies table of angular-osm builds:

dist dependencies to install
osm-api npm install --save x2js
osm-base64 npm install --save angular-base64 x2js
osm-oauth npm install --save osm-auth x2js
osm-nominatim
osm-osrm
osm-overpass
osm-taginfo
osm-togeojson

Now you have choose this you can plug the component into your angular app:

angular.module('example', ['osm.api'])

If you want, most of provided service can be configured using corresponding providers

angular.module('example', ['osm.api'])
.config(function (osmAPIProvider) {
    osmAPIProvider.options = {
        url: 'http://api06.dev.openstreetmap.org/api'
    };
});

The complete list of injectable services:

module service
osm.api osmAPI
osm.base64 osmBase64
osm.oauth osmAuthService
osm.nominatim osmNominatim
osm.osrm osrmAPI
osm.overpass osmOverpassAPI
osm.taginfo osmTagInfoAPI
osm.togeojson osmtogeojson