node package manager



Build Status Coverage Status

Leaflet.Toolbar provides flexible, extensible toolbar interfaces for Leaflet maps.


View examples for control-style and popup-style toolbars using Leaflet.draw.


Include Leaflet.Toolbar in your JavaScript project using npm install leaflet-toolbar.

You can then include Leaflet.Toolbar in your web application by adding the following HTML tags (paths below are relative to your project's root):

<script src="node_modules/leaflet-toolbar/dist/leaflet.toolbar.js"></script>
<link rel="stylesheet" href="node_modules/leaflet-toolbar/dist/leaflet.toolbar.css"/>

Leaflet.Toolbar exports two toolbar styles that can be used out of the box: a popup-style toolbar, and a control-style toolbar. To instantiate a control-style toolbar and add it to the map, use:

new L.Toolbar.Control({
    actions: [MyToolbarAction1, MyToolbarAction2, ...]

For more information, see the API Reference and Building custom toolbars on the wiki.


Contributors are welcomed!

Once you've cloned this repo, you'll need to run npm install in the project root to install the development dependencies using npm.

Leaflet.Toolbar uses grunt to run development and build tasks. You'll need to have the grunt command line interface installed: npm install -g grunt-cli. Once you've done this, running grunt without any arguments in the project root will watch the project source and lint, test, and build whenever the source files are modified. Additional tasks that may be useful for development are specified in the Gruntfile.


Run the test suite using npm test.

Documentation and Examples

The examples in the gh-pages branch can be updated using Grunt: grunt gh-pages:update. This will create a new commit in the gh-pages branch. If you wish to make changes to these examples public, you must subsequently run git push origin gh-pages.

Contributors are encouraged to open pull requests early to facilitate discussion about proposed changes!

Please follow the Leaflet contribution guide.


Thanks to @jacobtoye for the excellent Leaflet.draw library which was the inspiration for Leaflet.Toolbar. And, of course, thanks to @mourner for a fantastic open-source mapping library.