Labelgun is a mapping library agnostic labelling engine. It allows you to avoid cluttering in mapping popups and labels, providing precedence to labels of your choice.
The library makes three assumptions:
- Each label has a bounding rectangle (Min X, Min Y, Max X, Max Y)
- Each label has a weight
You can use labelgun in your project via npm such as:
npm install labelgun --save
You can also use a auto-generated CDN thanks to unpkg :
A nice interactive way to play with the demos is to use a hot reloading web server such as live-server:
npm install -g live-server
We can install all the required dependencies using node+npm:
Labelgun is transpiled from ES6 using babel presets for Webpack 2. You can build the source using:
For the minified version.
Labelgun uses Jasmine for testing. You can do an npm install and then use:
npm run test
at the command line. Tests are found in the
spec folder. We can also run test coverage as so:
npm run coverage
GitHub Pages & NPM
GitHub pages deployment:
git subtree push --prefix examples origin gh-pages
Labelgun as an open source project was made possible thanks to Podaris.