Best of all, there is a Drupal module for Leaflet, to make is really easy to display maps on Drupal. A few weeks back, ThinkShout and Marzee Labs, together with the help from the Drupal community, released beta 2. This new version has long-awaited Views support (read our post on that), so you can use Views to query your data and plot it on a Leaflet map.
An example map powered by Leaflet, Mapbox tiles and Drupal.
I have always been an advocate of using Open Layers in Drupal (see my presentations on Drupal 6 and Drupal 7), because of its completeness and extendability for building maps in Drupal. However, I also felt that the different levels of abstraction introduced by the module, combined with the weight of the JS library and it's somewhat dull default look made it more challenging to build custom maps in Drupal.
For example, adding a simple map on your site from a couple of geocoded nodes requires three steps: creating the data layer, configuring the map preset, and finally putting the map in page or block using Views. In Leaflet, that process is simplified: you store geo-data in entities and you display via field formatters or Views (see our next post).
Another reason to choose Leaflet is its native mobile support or its fantastic state-of-the-art support for clustering using Leaflet Markercluster.
Drupal and Leaflet are a great match if you have relatively few data to map (a couple of hundred nodes, for example). However, if you want to map thousands or even hundreds of thousands of points, Drupal and its mapping modules become extremely inefficient as all geographical data is fetched once at the beginning of the page load. A recent blog post by the folks of Affinity Bridge explain well alternatives and solutions.
The Leaflet module does not pretend to be a complete mapping module for Drupal. Instead, it makes it easy to display simple maps on your website, and does it well.
I hope that the momemtum that is rising around Leaflet in general, and the Leaflet module in particular (check the usage statistics), will translate into cool new features, better documentation, and above all, more maps.