Mapping is a framework to easy create other mapping modules to allow map providers. Dependent modules will count with all magic things Ctools offers. Mapping will not save geographic data, it is responsible only for map configurations.

What Mapping module offers:

For Developers:

  • A main hook to declare a map in code in a simple manner.
  • Hooks to create in code a maker style
  • Easily create plugins (via Ctools)
    • Map plugins may be a different map projection, for example.
    • Style plugins may be a different way to represent markers
    • Behavior plugins, for example Leaflet Markcluster for a Leaflet map
  • A centralized way to store plugins configurations
  • Plugins configurations are automagically exportable via Features
  • Plugins configurations can live on code AND be customized by UI
  • Plugins configurations that were in code and become customized will live in database
  • Customized plugins configurations can be exported via Features or custom code.

For Users

  • Centralized User Interface, common to all mapping modules that depends on Mapping module. Having a common interface will help switching from different map providers available in Drupal without having to learn how to use a new UI.
  • Track configuration changes using Features

Differences from other modules

Mapping module does not offer any mapping library, it is a framework for other modules.

Differences from the actual Leaflet module

What Mapping offers that Leaflet doesn't:

  • Easy to crate new plugins
  • All configuration is outside of Views
  • Reusable configuration across different maps
  • Customizable and reusable configurations for maps, styles, and other plugins
  • Easy to extend administration User Interface options for new plugins
  • Mapping does not depend on geofield, nor Entity API. Geocoordinates can be read from any source a plugin allows.

Differences from OpenLayers module

  • Mapping module does not provide the OpenLayers library, any chosen library can be added as a plugin by another module
  • OpenLayers had some bad fame for being difficult to configure,. Yet most of these issues have been fixed,developers still have the same mindset as in the past. Mapping comes with lessons learned from OL, and will have documentation about how to use the easy things provided, as well as the powerful customization possibilities. Among the easy things you can count on there are for example hooks to easy define a map in a very simple PHP array.

Resources:

Mapping module project page: Mapping