Other Uses
We’ve focused on tiles, but since OpenStreetMap – uniquely – gives you access to the raw map data, you can build any location or geo- application. These are the most common starting points; a full listing is available at the OpenStreetMap Wiki.
Common tools
- Osmosis is an all-purpose Java application for loading OSM data into a database. Most applications of OSM data use Osmosis in some way.
- Osmium is a flexible framework, rapidly gaining popularity, which offers a highly configurable alternative to Osmosis.
- Mapbox Studio is a suite of tools to produce ‘vector tiles’ which can be rendered either server-side or client-side.
Geocoding services
- Nominatim is OpenStreetMap’s geocoding service (placename<->lat/long). It has significant hardware requirements and many people choose to use the free instance offered by MapQuest Open.
- OpenCage provides a public geocoding API aggregating Nominatim and other sources.
- OSMNames - place names from OpenStreetMap. Downloadable. Ranked. With bbox and hierarchy. Ready for geocoding.
Routing engines and services
- OSRM is a new, fast routing engine designed for OSM data.
- Gosmore is a long-established routing engine.
- Graphhopper is a fast Java routing engine.
- Public routing APIs using OSM data are offered by MapQuest Open and Mapbox.
- Specialist routing APIs include CycleStreets cycle routing (UK)
Vector map libraries (mobile)
- Android libraries include the Mapbox Android SDK, mapsforge, Nutiteq Maps SDK, Skobbler Android SDK, and Tangram ES.
- iOS libraries include the Mapbox iOS SDK, Nutiteq Maps SDK, Skobbler iOS SDK, and Tangram ES.
Vector map libraries (Web)
- Kothic JS renders OSM data “on the fly” using HTML5, without the need for raster tile images.
- Mapbox GL JS and Tangram render vector tiles based on OSM data using WebGL for better performance.