An assessment of all geospatial-related Drupal modules, as a directory resource.
The list includes some sandbox projects and some projects on github only.
Please help us identify and describe modules that you maintain or are aware of.
| Module | 5.x | 6.x | 7.x | 8.x | Category | Maintained | Integrates With | Doc Level |
|---|---|---|---|---|---|---|---|---|
| Ad GeoIP: adds geotargeting functionality to the Drupal advertisement module | Y | Y | N | N | Geocode | Fixes only | Drupal advertisement | Poor |
| Activity Map: Displays Site activity on GMAP | N | Y | Y | N | Statistics | ?? | Activity, GMap, User Locations | Poor. Install |
| Address Field: A D7 field module to hold international postal addresses. | N | N | Y | N | Storage, Input | Y | Commerce | Average |
| Address Field Static Map: Generate a 'Google static map', a regular 'JS Google map' or a Mapquest static map as a block when placed on a content type that has an address field. | N | N | Y | N | Input | Y | Adress Field | Average |
| Apachesolr Location: Add-on for the Apache Solr Search Integration module. It indexes info from a location field (city, zip, province, country and coordinates) into a SOLR index. Additionally it provides extra facets for city, zip, province and country. | N | N | Y | N | Search | Y | Apache Solr, Location | Poor |
| BizMap Pro: Integrate BizMap Pro maps with your drupal site. | N | Y | N | N | Third party | ?? | Poor | |
| BOM Weather: Suite that imports and displays weather information from the Australian Bureau of Meteorology. | N | Y | N | N | Third Party | Y | Feeds, Views, Ctools | Poor |
| CartoDB: Integration with the CartoDB open source cloud-based geospatial database platform. | N | N | N | N | Storage | Y | Poor | |
| CloudMade: Provides integration between Drupal and CloudMade. | N | N | N | N | Third party | ?? | OpenLayers | Nothing |
| Data Visualization Wizard: Provides a fast way to get data visualizations online. Geocoded data can displayed on an interactive map with each data element as a point on the map (with optional pop-ups). | N | Y | N | N | Visualization | Y | Poor. Install | |
| Embed Google Map Fields: Provides a CCK field for embedding Google Maps into nodes. You can also type a search query into the field and display the search results in the field. | Y | Y | N | N | Input, Search | ?? | Gmap | Poor |
| Entreprise Location: Manage location nodes. It is a part of the Open Enterprise distribution but can be used in any Drupal 7 site. | N | N | Y | N | Output | Y | Poor | |
| FeedAPI Location: Combines the FeedAPI module with the Location module to import locations from XML feeds. | N | Y | N | N | Input, Storage | ?? | Poor | |
| FixMyStreet: A Drupal-based re-creation of FixMyStreet (UK) arising from the Open Government New Zealand initiative (refer http://open.org.nz/) currently operating at FixMyStreet.org.nz. | N | Y | N | N | Feature | ? | Nothing | |
| GDriving: Allows users to input an address via a Google Map marker's info window, and displays the Google Map driving directions in a printable facebox overlay. | N | Y | N | N | Third party, Display | ?? | GMap | Poor |
| Geo: An API module that provides access to storage and query functions, for use by other modules. Geo provides storage and views integration for any type of Geospatial data including points, lines and polygons. Ships with Geo Field (for storing points, lines and polygons) and Geo Data (for importing existing shape data files for storage). | N | Y | N | N | Storage, API | N | CCK, Views, Geocode, OpenLayers (1.x) | Poor |
| Geocluster: Server-side clustering for mapping in Drupal 7. | N | N | Y | N | Geocode | Y | Poor. Discussion | |
| Geofile: Provide formatters and mechanisms to display files who contains geographical information on a map, as layer | N | N | Y | N | Visualization | Y | Openlayers | Nothing |
| Geo Taxonomy: Attaches geo information (latitude, longitude, bounding boxes, etc.) to taxonomy terms. | N | Y | N | N | Storage | N | Views, Feeds, Taxonomy | Poor |
| Geoclustering: (on github) Provides server-side clustering of map locations. | N | Y | N | N | Output | N | Geo, Geofield, Views | Poor |
| Geocode: This module implements an API to convert the information you already have (address, location, GPX log, photo EXIF geotags) into geographic information. It supports a variety of input formats and runs them through pluggable backends to produce geographic information. In addition to Latitude / Longitude points, this API also supports more complex geographies such as lines and polygons. It also provides a CCK widget for for the Geo project's Geo Field module. | N | Y | N | N | Input, API, Geocode | ?? | CCK, Views, Geo, File field | Poor |
| Geocoder: Drupal 7 fork of Geocode This module geocode addresses, GPX files, geo-tagged images, and KML files | N | N | Y | Y | Input, API, Geocode | Y | Geofield Address Field OpenLayers Location | Average. Tutorial |
| GeoExt: (sandbox) Integration with GeoExt (OpenLayers + ExtJS) javascript toolkit. | N | N | Y | N | Visualization | Y | Average | |
| Geofield: A powerful field type that stores geographic location data for points, lines, and polygons. | N | N | Y | Y | Storage, Input | Y | OpenLayers, Leaflet, Geocoder, Adress Field, Views GeoJSON | Good. Tutorial |
| Geofield Map: Submodule of Geofield, providing a field formatter and Views integration. Simpler than Open Layers or Leaflet. | N | N | Y | N | Visualization | Y | Geofield, Views | See GeoField Tutorial |
| GeoIP Country: Provides a restricted list of countries | N | Y | N | N | Geocode | ?? | N | Location, GeoIP | Poor |
| GeoIP: API for translating IP address to City or Country, via GeoLite. | Y | Y | N | N | Geocode | N | GeoIP Country | Poor |
| Geolocation: Geolocation provides a Drupal 7 field for storing Longitude/Latitude pairs. It currently has a plain input widget and a Google Map widget, as well as a simple text based formatter and a static Google Map. | N | Y | Y | Y | Storage, Input | Y | Geolocation Proximity | Poor. Demo |
| Geomap: A Google map implementation that renders a Google map block based on geo microformat tags embedded in a page. | Y | Y | N | N | Visualization | Y | ?? | Poor. Demo |
| Geonames: A collection of modules to provide an API to integrate with GeoNames webservices. The modules in this package enable access to all information provided by the XML-based Services from GeoNames. | Y | Y | Y | N | Geocode | Y | ?? | Poor |
| Geonet NZ: Wrapper for talking to Geonet NZ api. | N | Y | N | N | Third Party | Y | Nothing | |
| GeoRSS module: Add geographic point data to RSS feed output in Simple GeoRSS or GML format | N | Y | N | N | Output | ?? | Location, Geo | Poor |
| GeoServer: Provides GeoServer integration to publish geospatial data stored. | N | N | Y | N | Third-party integration | Y | PostGIS | Average. Tutorial |
| Get Directions: Provides the ability to get directions to and from places using Google Maps. | N | Y | Y | N | Input | ?? | Gmap, Location, Views | Poor |
| Get Locations: Provide Google maps API version 3 enabled maps on which to display markers of locations found in location-enabled content-types. | N | Y | Y | N | Input | Y | Location, Libraries, Views | Average |
| GMap Addons: Add-ons for the GMap Module: CCK field, debugging, more base layers, and overlays. | Y | Y | Y | N | Visualization | ?? | GMap | Poor |
| Gmap Address Filter: Simple input filter module. | N | Y | N | N | Input | N | Poor | |
| Gmap Blocks: Creates blocks containing a Google Map highly configurable. It can contains multiple locations which are created separately and are therefore reusable in multiple blocks. | N | Y | N | N | Display | ?? | Gmap | Poor |
| GMap Direction Extras: Allows the request of directions from Google's GMap service and stores all details about the direction in the Drupal database for later view. All those directions are user specific and no route can be saved more than once. | N | Y | N | N | Storage, Input | ?? | Gmap | Poor |
| GMap Module: Allows for generation of maps from content/user location data using Google Maps API. | Y | Y | Y | N | Visualization | Y | Views, CCK, Location | Average. Tutorial It lacks D7 version |
| Google Maps API V3: Integrates the Google Maps API V3 with Drupal, making it incredibly easy to add a map to your site. | N | N | Y | N | Location | Y | Poor | |
| Google Map Field: Allows adding maps to content via the addition of a "Google Map Field" field type that can be added to content types, or by direct insertion into content via a WYSIWYG plugin. | N | N | Y | Y | Y | Input | Poor | |
| Google Maps Location: Provides a page and a block for a single location for brochure sites. | N | Y | N | N | Visualization | Fixes only | n/a | Poor |
| Google Maps Tools: Google Maps & Static Maps API integration, (different from GMap Module and perhaps broader scope.) | Y | Y | N | N | Storage, Visualization | ?? | Views, CCK | Poor |
| Google Visualization API: Views 2 style plug-in uses Google Visualization API to display different types of charts. | N | Y | N | N | Visualization | Y | Views | Poor |
| HTML5 user geolocation: Lets user store their location on the edit account page uses HTML5’s geolocation API to gather latitude and longitude.. | N | Y | N | N | Storage & Input | N | ?? | Poor |
| IP Geolocation: Maps site visitors using IP geolocation & reverse geocodes to street address. | N | N | Y | N | Geolocation | Y | GeoIP, Smart IP, Views, Location, Commerce | Good |
| jQuery GPS: Provides a user interface for jQuery GPS Library. | N | N | Y | N | Input | Y | Poor | |
| jsMap: provides flexible, interactive maps based on SVG data that is stored in entities. | N | N | Y | N | Storage, Visualization | Y | Views, Field API | Poor |
| KML: Output location data in KML format via Views. | N | Y | Y | N | Output | Y | Views | Poor |
| KML Content Type: Content type based on the Google Earth API. Users can attach .kml files to a node (with upload module). | N | Y | N | N | Input, Storage | Y | CCK | Poor |
| KML Parser: KML parser for the Feeds module. | N | Y | N | N | Input | Y | Feeds, OpenLayers | Poor |
| Leaflet: Integration with the Leaflet JavaScript mapping library. | N | N | Y | Y | Visualization | Y | Views | Poor |
| Leaflet Markercluster: Provides Beautiful Animated Marker Clustering functionality for Leaflet using the Leaflet MarkerCluster library. | N | N | Y | Y | Visualization | Y | Leaflet | Average. Readme |
| Leaflet More Maps: Adds more map base layer options to Leaflet. | N | N | Y | N | Visualization | Y | Leaflet | Average |
| Location: allows real-world geographic locations to be associated with Drupal nodes, including people, places, and other content. | Y | Y | Y | N | Storage | Y | Views, GMap | Average. Tutorial |
| Location CCK Migrate: Migrate module that transforms D6 location_cck fields into D7 geofields. | N | N | Y | N | Storage | Y | Location, Geofield, OpenLayers | Poor |
| Location Display: Uses Google Static Maps API to display non interactive maps and links to a real google map for the CCK fields in these modules: Addresses & Location. | N | Y | N | N | Output | Y | Adresses, Location | Poor |
| Location Feeds: Location mappers for the Feeds module, compatible with CCK and Location module location fields. | N | Y | Y | N | Input | Y | CCK, Location, Feeds | Poor |
| Location Map: Provides a page and a block for a single location for brochure sites. | N | N | Y | N | Visualization | Y | n/a | Poor |
| Mapbox: Provides a layer type to the OpenLayers module and GMap module which can include MapBox map tiles on Drupal sites. | N | Y | Y | N | Theming, Third Party | Y | OpenLayers, GMap | Average |
| Mapping: A framework & common API (leveraging CTools) for other modules like OpenLayers to build Javascript-based maps in Drupal. Still very early in development. | N | N | N | N | Visualization | ?? | CTools, OpenLayers | Nothing |
| Mapping Kit: A collection of modules to support custom mapping with the OpenLayers library. | N | Y | N | N | Visualization | ?? | ?? | Average. Tutorial |
| Maps: Provides a theme function to make simple maps via Google Static Maps API V2 | N | N | N | N | Theming | Y | Nothing | |
| Mapstraction: delivers support for the Mapstraction javascript library, which provides an abstraction layer for various map providers including Google, Yahoo!, OpenLayers, etc. It displays maps on your site from multiple providers and switch between providers without worrying about differences in their APIs. The module provides a Views style plugin and an API for developers. When the Views style is used, it will display nodes as points on a map. The latitude/longitude points, info balloon contents, map icon, and one or more attributes can be provided by any view fields, including those from CCK. | N | Y | N | N | Visualization | Y | CCK, Views | Good. Tutorial |
| Mapstraction CCK: Mapstraction CCK is a module which allows users to georreference contents through the Mapstraction JS library. It provides an intuitive map Widget based on the Geo module. It provides a map output formatter for points, lines and polygons. Also provides Views integrations and different submodules that implements other features as geocoding. | N | Y | N | N | Input, Visualization, Geocode | Y | CCK, Views, Geo | Good. Tutorial, Demo |
| Modest Maps JS: Integration with Modest Maps, display and interaction library for tile-based maps in Javascript. | N | N | N | N | Visualization | Y | Nothing | |
| OGDI Field: Pulls in Open government data from a Microsoft Open Data server, via it's API and then outputs it to screen in a formatted table and map. | N | Y | Y | N | Input | Y | CCK | Poor |
| OM Maps: OM Maps is a plugin of OM Maximenu (for ver. 1.0-rc5 and beyond), it's a collection of image maps used for navigating your site sections/pages. | N | Y | Y | N | Navigation | Y | OM Maximenu | Nothing |
| Open 311: Initial attempt at Open311 support for Drupal, specifically the Open311 GeoReport v2 API. Refer http://wiki.open311.org/GeoReport_v2 | N | N | N | N | Services | ? | Nothing | |
| Open Data Vienna: This project contains feature modules for importing Open Data of Vienna into Drupal. | N | N | Y | N | Feature | Y | Feeds, Feeds JSON Path Parser, Openlayers, Openlayers themes, Views, Geofield, RDF Extensions | Poor |
| OpenLayers: This module provides integration with the OpenLayers JS library and aims to be a complete mapping visualization solution for Drupal. | N | Y | Y | N | Visualization, ~Storage (D6 only) | Y | CCK (D6 only), Views, MapBox, Geofield | Average. Tutorial It lacks openlayers 3.x version |
| OpenLayers Apache Solr Integration: This module provides integration between the Openlayers module and apachsolr with local solr integration. This provides a map, layer, layer type and block for openlayers. | N | N | Y | N | Storage, Display | Y | OpenLayers, Apache Solr, Geofield, Geocode | Average. Tutorial |
| Openlayers Blocks: This module allows you to create Openlayers blocks. | N | N | Y | N | Display | Y | OpenLayers, Bean | Poor |
| Openlayers CCK Migrate: Transforms D6 openlayers_cck fields into D7 geofields. | N | N | Y | N | Storage | Fixes only | OpenLayers, Geofield | Nothing |
| OpenLayers Field: Expose available OpenLayers presets as a field and then display the map when viewing an entity. | N | N | Y | N | Input | Y | OpenLayers | Nothing |
| OpenLayers Filters: Provides an input filter to create inline OpenLayers maps. | N | N | Y | N | Display | Y | OpenLayers | Average |
| OpenLayers Geocoder for D6: Provides a widget for the OpenLayers CCK field to quickly look up an address via the Google geocoder. Optionally it also provides a mechanism to use more info returned from the geocoder, such as postal code, administrative area, city, country, etc. in simple CCK text fields. | N | Y | N | N | Input, Geocode | ?? | CCK, Views, OpenLayers | Average. Tutorial |
| OpenLayers Geocoder for D7: Provides a widget for Geofield Openlayers Map to quickly look up an address via the Google geocoder. Optionally it also provides a mechanism to use more info returned from the geocoder, such as postal code, administrative area, city, country, etc. in simple CCK text fields. | N | N | Y | N | Input, Geocode | Y | OpenLayers, Geofield | Average. Video Tutorial and screenshot |
| Openlayers Geosearch: Implements search functionality as seen on openstreetmap.org: search & search results blocks, (geocoding via Geocode or Geonames modules, OSM MapQuest Nominatim, or WFS,) and zoom-to-location on an OL map. | N | Y | N | N | Geocode, Search, Visualization | Y | Geocode, Geonames, OpenLayers | Nothing |
| OpenLayers Editor: Integrates the OpenLayers Editor library, an in-browser map editing tool based on OpenLayers. | N | N | Y | N | Input, Visualization | Y | External | |
| Openlayers Heatmaps: Allows creation of heatmaps layers through the OpenLayers module. | N | N | Y | N | Visualization | Y | OpenLayers | Nothing |
| OpenLayers KML Layer: Creates an openlayer layer and associate it with one or more map presets when creating or updating configured nodes. | N | Y | Y | N | Input, Storage | Y | Views, OpenLayers, CCK / FileField | Nothing |
| OpenLayers Locator: The OpenLayers Locator is a feature module that creates a robust, turn-key Locator using the Openlayers, Openlayers Proximity, Addressfield, Geofield and Geocoder modules | N | N | Y | N | Example/Kickstart | Y | Features, OpenLayers, OpenLayers Proximity, Geocoder, Geofield, Address Field | Average. Tutorial Needs more details, Demo |
| OpenLayers Plus: (on github) A collection of behaviors that work with the Drupal OpenLayers module: BlockSwitcher, BlockToggle, Legend, Permalink, Popup, Tooltip, Scale Points. | N | Y | N | N | Visualization | N | OpenLayers | Nothing |
| OpenLayers Plus Plus ("dolpp"): (on github) Add-ons to the OpenLayers module for querying, clustering, and legends. | N | Y | N | N | Visualization | ?? | OpenLayers | Nothing |
| OpenLayers Proximity: Enables geographical proximity search for the OpenLayers module. It exposes a filter to the Views module where users can specify starting point and radius of the proximity search. Rules integration gives the possibility to notify nodes that something has happened "near" them. | N | Y | N | N | Input, Storage | Y | Views, Rules, OpenLayers | Good. Tutorial |
| Openlayers Styles: Provides a flexible mechanism to manage styles and apply variable styling in OpenLayers. | N | N | Y | N | Theming | Y | OpenLayers | Poor |
| OpenLayers Taxonomy: Creates an openlayer layer for each term in an selected vocabulary. The features for each layer are rendered by an openlayers data view display that accepts the taxonomy term as an argument. | N | Y | Y | N | Input, Storage | Y | Views, OpenLayers, Taxonomy | Poor |
| Polymaps: Integrates the javascript-based Polymaps mapping library. | N | N | N | N | Visualization | N | Mapping, CTools | Nothing |
| PostGIS: A field type that stores geospatial data in a PostGIS database. | N | N | Y | N | Storage, Input | Y | Feeds, OpenLayers | Average. Tutorial |
| Route Planner: Creates a route from any address to a fixed point of interest (i.e. your company location). | N | Y | Y | Y | Input | Y | Gmap | Poor |
| Rules Geocoder: Provides a geocoding action for the Rules module to geocode from OpenLayers CCK location data. | N | Y | N | N | GeoCode | Y | Rules, OpenLayers, CCK | |
| Quova: Interface to Quova's IP-based geolocation and network information service. | N | Y | Y | N | Geolocation | Y | Views, Location, Rules, Ad, Weather, Context | Average. Tutorial Needs work |
| Search API location: Integration of the Location module and Search API, allowing indexing of location data in Apache Solr and spatial proximity search. | N | N | Y | N | Storage, Search, Proximity | Y | Location | Average |
| Simple Geo: Provides simple functionality for positioning content and users. Positions are rendered using the geo microformat (http://microformats.org/wiki/geo). | N | Y | N | N | Views | ?? | Poor | |
| Simple Google Maps: Field formatter for Drupal 7 text fields. With this formatter, you can enter a single-line address that Google Maps would recognize into a plain text field. | N | N | Y | Y | Display | Y | Average | |
| Simplemap: Makes the addition of simple static map blocks as straightforward as adding a normal block. | N | Y | N | N | Display | ?? | Nothing | |
| Simplest Gmap: Simple GMaps v2 implementation. No additional tables in db, uses CCK to store all data. | N | Y | N | N | Display | N | Poor | |
| SlashMaps for MapBox: allows you to integrate MapBox's fast and flexible map hosting into your Drupal site. | N | Y | N | N | Visualization | Y | Mapbox | Average |
| Spatial Tools: A "motley collection of useful spatial tools" including shapefile import, shapefile widget, and spatial table. | N | Y | N | N | Storage, Input | ? | Feeds, TableWizard, Geo, OpenLayers | Nothing |
| Static Map: Provides a static map formatter for the geofield and (soon) location modules. Both Google Maps and OpenStreetMap are supported. | N | N | Y | N | Display | Y | Gmap | Nothing |
| StyleWriter: Tailored to choropleth and scaled-point maps, although it can help with the rendering of any single-datasource TileLive-rendered maps. | N | N | Y | N | Display | ?? | Views, OpenLayers | Poor |
| Sync PostGIS: Pushes geospatial data (generally stored in a geofield) attached to entities into a PostGIS database, enabling modules to perform complex spatial queries and external services to interact with the data. | N | N | Y | N | Storage | Y | Geofield, PostGIS | Poor |
| Tagmap: Views style plugin. We made a text marker API which we use to display a geo-coded tag cloud over Google Map. | N | Y | N | N | Display | Y | Views, Gmap | Poor |
| Trackfield: Stores single paths or tracks and has rudimentary interface for manually inputting this data (copy/paste from Google Earth for example) and limited file import ability. Tracks can be displayed on Gmap field and data for each point (altitude data for example) plotted when a third party graphing library is installed. | Y | Y | N | N | Storage, Input, Visualization | Y | GMap | Poor |
| Umapper: Implementation of the UMapper.com API allowing for easy creation and addition of maps to your nodes. | N | Y | N | N | Third party | Y | Poor | |
| Vidi: Vidi module serves as a guide to choose adequate visualizations from Timeline, Tagmap and GVS modules for specific data, and helps in process of preparing data and visualizations. | N | Y | N | N | Visualization | Y | Poor | |
| Views GeoJSON: Style plugin for Views to output location-specific data in GeoJSON format. | N | N | Y | N | Output | Y | Views, Openlayers, Leaflet, Geofield | Average. Readme |
| Visitor Info: Captures the IP address of website visitors and provides a Google Map pinpointing their originating geographic location. | N | Y | Y | N | Third Party | Y | GMap | Poor |
| Yahoo Geocoding API: It finds geo coordinates for a given address. The module it self don't do anything out of the box, by provides a function to fetch the geo coordinates. | N | Y | N | N | Geocode, Third party | ?? | Poor | |
| Yandex Maps: Shows locative data using the Yandex maps API. Yandex maps are the good Google Maps alternative for Russia and other eastern Europe countries. | N | Y | N | N | Third party | ?? | Poor | |
| Webform Gmap: Adds a "Map location" component to a webform, which gives users the ability to pick a location from the map by dragging a marker. | N | Y | N | N | Input | Y | Webform | Poor |
| WFS: Implements OpenGIS Web Feature Service Interface Standard (WFS.) Allows Drupal to serve geo data to GeoServer, displaying points as a rendered image. The user can then interact with the map by clicking and making WFS queries for point information. | N | Y | N | N | Output, Input, Visualization | ?? | Views, OpenLayers | Good. Tutorial Outdated |
| Where I Am: Creates a block allowing users to quickly setup their location (street, city, etc.) through a block, therefore being geolocalized with automatic calculation of latitude / longitude. | N | N | Y | N | Input | Y | Location | Poor |
| WMS: Implements the WMSGetFeatureInfo call for WMS layers as a behaviour for the OpenLayers module, allowing querying of WMS layers of an OpenLayers map for details on displayed features. | N | Y | Y | N | Visualization | Y | OpenLayers | Poor |
| Wysiwyg Image Map: Image Map editor for tinymce provided by the Wysiwyg module. | N | Y | Y | N | Input | Y | TinyMCE, Wysiwyg | Poor |
| Z Maps: Collection of enhancements to other mapping modules, primarily OpenLayers, provided as examples. Maintained but not supported. | N | N | 7 | N | Visualization | Y | OpenLayers | Nothing |
| Example: Description of module. | Y/N | Y/N | Y/N | Y/N | Storage, Input, Visualization, etc. | Y/N | Integrated with Module X,... | Documentation state: nothing, poor, average, good |
| A good writeup of some of the pros and cons of these modules as if August 2010 is at http://www.levelos.com/blog/2010/08/mapping-drupal |