Geospatial Tools
Organizations
Databases
- MobilityDB/MobilityDB: An open source geospatial trajectory data management & analysis platform
- tidwall/buntdb: BuntDB is an embeddable, in-memory key/value database for Go with custom indexing and geospatial support
- PostGIS: Spatial and Geographic objects for PostgreSQL
Libraries
Mapping Platforms
Tileservers
- Tileserver-GL
- Tegola
- ModTile
- urbica/tessella: Lightweight Node.js Mapbox Vector Tiles server
Web
CLI
- mapbox/tippecanoe
- mapbox/geojson-vt
- mapbox/vt2geojson
- wangyoucao577/vt2geojson (Go)
- mapbox/geojson-merge
Building Data
Specifications
- mapbox/simplestyle-spec: A simple styling convention for GeoJSON data
- mapbox/awesome-vector-tiles: awesome implementations of the Mapbox Vector Tile specification
- OGC API - Features
- OpenAPI
Slippy Maps
Terrain
- mapbox/delatin: A fast JavaScript terrain mesh generation tool based on Delaunay triangulation
- Bringing 3D terrain to the browser with Three.js, Peter Liu
Mapbox Examples
- How I built a wind map with WebGL, Vladamir Agafonkin
- Monochromatic styling: Tinting maps in Studio, Jonni Walker
- Glow Effect: the firefly technique, Jonni Walker
- Project ’44: Digitizing WWII histories, Megan Danielson
- Create location-based stories with minimal code
- Creating viewsheds with Mapbox GL and Turf.js
Deck.gl
- Animating points on maps with deck.gl
- Uber: How (sometimes) assuming the Earth is “flat” helps speed up rendering in deck.gl
QGIS
Cesium
Misc
Building Your Organization’s Spatial Data Infrastructure Using Open Source Stack Digital Democracy/Mapeo
Well-Known Text (WKT) Text markup language for representing vector geometry objects on a map https://en.wikipedia.org/wiki/Well-known_text_representation_of_geometry
PBF PBF Format ("Protocolbuffer Binary Format") Primarily intended as an alternative to the XML format. It is about half of the size of a gzipped planet and about 30% smaller than a bzipped planet. It is also about 5x faster to write than a gzipped planet and 6x faster to read than a gzipped planet. The format was designed to support future extensibility and flexibility. https://wiki.openstreetmap.org/wiki/PBF_Format
OpenMapTiles: Open-source maps made for self-hosting https://openmaptiles.org/
Awesome-geojson: GeoJSON utilities that will make your life easier. https://github.com/tmcw/awesome-geojson
Geojson-pick: Pick properties from features in a GeoJSON FeatureCollection. https://github.com/node-geojson/geojson-pick
Geojson-precision: Adjust precision of GeoJSON coordinates https://github.com/perrygeo/geojson-precision
Imposm imports OpenStreetMap data into PostGIS https://github.com/omniscale/imposm3/
Using Tippecanoe, Tileserver GL , and Leaflet to serve scale-independent (and really cool looking) Raster (or vector) tiles at higher level zooms https://medium.com/@kennethchambers/using-tippecanoe-tileserver-gl-and-leaflet-to-serve-scale-independent-and-really-cool-looking-751368d821c7
WebGL Earth http://examples.webglearth.com/#satellite
Add geojson features to OSM editor http://preview.ideditor.com/master/#background=Mapbox&disable_features=boundaries&gpx=http://user-agent.org/cb/220690009003112.geojson&map=16.18/31.68513/-93.02857
https://github.com/jawg/mbtiles-generator https://github.com/mapbox/mbtiles-spec/wiki/Implementations https://www.npmjs.com/package/mbtiles-server https://github.com/consbio/mbtileserver
How We reduced our Google Maps API cost (Hacker News) https://news.ycombinator.com/item?id=22767581
Tilemill Map design studio https://github.com/tilemill-project/tilemill https://tilemill-project.github.io/tilemill/
Mapnik Raster tile generation Artem Pavlenko LGPL (GNU Lesser General Public Licence v2.1) https://github.com/mapnik/mapnik https://en.wikipedia.org/wiki/Mapnik
MapServer Open Source platform for publishing spatial data and interactive mapping applications to the web. https://mapserver.org/index.html
MBtiles Spec Implementations https://github.com/mapbox/mbtiles-spec/wiki/Implementations
OpenLayers A high-performance, feature-packed library for all your mapping needs https://openlayers.org/
GeoJSON.io Development suspended, new fork at https://geojson.net/ Mapbox https://github.com/mapbox/geojson.io
Openaddress.io The free and open global address collection https://openaddresses.io/
Robosat Python3 library for semantic segmentation on aerial and satellite imagery Mapbox
Tile-reduce Geoprocessing library that implements MapReduce to let you run scalable distributed spatial analysis using JavaScript and Mapbox Vector Tiles Mapbox https://github.com/mapbox/tile-reduce
Coordinate Systems EPSG:4326 (WGS 84) and EPSG:3857 (Web Mercator) http://lyzidiamond.com/posts/4326-vs-3857 Reference ellipsoid >> Coordinate system (Geographic or Project) Lat/Long == Geographic Coordinate System Datums == Geographic Coordinate Systems, based on a specific ellipsoid, with an origin at a specific location, and the ellipsoid at a specific orientation == Spatial Reference Systems or Coordinate Reference System (CRS) EPSG == European Petroleum Survey Group, now part of the International Association of Oil & Gas Producers (IOGP) as of 2005 WGS84 is the defined coordinate system for GeoJSON, as longitude and latitude in decimal degrees EPSG:3857 Pseudo-Mercator coordinate system takes the WGS84 coordinate system and projects it onto a square; uses the WGS84 coordinate system, which uses the WGS84 ellipsoid, but projects the coordinates onto a sphere Web maps rely on data stored with WGS84 coordinates (in some programs this is called “unprojected” data) and then visualize the data using Pseudo-Mercator WGS84 is unprojected — there is no visual representation of that data. So if someone says they want to see their data in WGS84, really they want to see their data in a Plate-Carrée projection, which essentially creates a linear Cartesian graph on the page.
PostgreSQL/PostGIS Spatial database extender for PostgreSQL object-relational database https://postgis.net/