|Original author(s)||Artem Pavlenko|
|Developer(s)||The Mapnik Contributors|
|Stable release||2.2.0 / June 3, 2013|
Mapnik is an open source mapping toolkit for desktop- and server-based map rendering, written in C++. One of its many users is the OpenStreetMap project (OSM), which uses it in combination with an Apache Web Server module (mod_tile) to render tiles that make up the OSM 'Slippy Map' Layer. An XML file can also be used to define a collection of mapping objects that determine the appearance of a map, or objects can be constructed programmatically in C++, Python, and Node.js. Artem Pavlenko, the original developer of Mapnik, set out with the explicit goal of creating beautiful maps by employing the sub-pixel anti-aliasing of the Anti-Grain Geometry (AGG) library. Mapnik now also has a Cairo rendering backend. For handling common software tasks such as memory management, file system access, regular expressions, and XML parsing, Mapnik utilizes the Boost C++ libraries.
A number of data formats are supported in Mapnik using a plugin framework. Current plugins exist that utilize OGR and GDAL to read a range of vector and raster datasets. Mapnik also has custom Shapefile, PostGIS and GeoTIFF readers. More data access plug-ins will be available in the future. There is also an osm2pgsql utility, that converts OpenStreetMap data into a format that can be loaded into PostgreSQL. Mapnik can then be used to render the OSM data into maps with the appearance the user wants.
Mapnik is a cross platform toolkit that runs on Windows, Mac, Unix-like systems like Linux and Solaris (since release 0.4).
Mapnik is free software and is released under LGPL (GNU Lesser General Public Licence).