awesome-frontend-gis
GIS framework
A collection of libraries and tools for creating web-based geographic information systems and visualizing geospatial data on the web.
Geospatial resources for web development πΊοΈ
446 stars
16 watching
24 forks
last commit: 22 days ago
Linked from 2 awesome lists
arcgisawesomeawesome-listdata-visualizationfrontendgeogeographic-datageographical-information-systemgeographygeojsongeospatialgeospatial-analysisgeospatial-datagismapmappingmapsopen-sourcevisualizationwebgl
π¨βπ» JavaScript Libraries / Mapping | |||
antvis L7 | 3,671 | 7 days ago | Large-scale WebGL-powered Geospatial Data Visualization |
ArcGIS Maps SDK for JavaScript | Modern JavaScript API and web component library for building interactive 2D and 3D web apps for the browser | ||
ArcGIS REST JS | 354 | about 1 month ago | Compact, modular JavaScript wrappers for the ArcGIS REST API that run in Node.js and modern browsers |
Bertin.js | 307 | about 1 year ago | A JavaScript library for visualizing geospatial data and making thematic maps for the web |
Cesium.js | 12,975 | 6 days ago | An open-source JavaScript library for world-class 3D mapping of geospatial data |
d3-geo | 1,031 | 5 months ago | A library for creating maps based on D3.js |
d3-geo-projection | 1,105 | over 1 year ago | Extended geographic projections |
d3-geo-voronoi | 236 | about 2 months ago | Voronoi diagrams and Delaunay triangulation for the sphere |
datamaps | 3,784 | over 1 year ago | Customizable map visualizations in one file |
Deck.GL | 12,265 | 7 days ago | WebGL2 powered geospatial visualization layers |
Eurostat-map | 61 | 5 days ago | Create and customise web maps showing Eurostat data using D3.js |
globe.gl | 2,154 | 4 days ago | This library is a convenience wrapper around the three-globe plugin, using ThreeJS/WebGL for 3D rendering |
Google Maps | Google Maps API for JavaScript | ||
gridviz | 194 | 4 days ago | A package for visualizing gridded data |
HERE maps API | Build web applications with feature-rich and customizable HERE maps | ||
iTowns | 1,112 | 5 days ago | A Three.js-based framework written in JavaScript/WebGL for visualizing 3D geospatial data |
Leaflet | 41,450 | 10 days ago | The leading open-source JavaScript library for mobile-friendly interactive maps |
Map Forecast API | 792 | over 2 years ago | Simple-to-use library based on Leaflet 1.4.x. It allows you to show wind maps |
Mapbox GL JS | 11,228 | 7 days ago | JavaScript library that uses WebGL to render interactive maps from vector tiles |
maplibre | 6,681 | 4 days ago | It originated as an open-source fork of mapbox-gl-js, before their switch to a non-OSS license in December 2020 |
MapTalks.js | 4,320 | 21 days ago | An open-source JavaScript library for integrated 2D/3D maps |
OpenLayers | 11,454 | 5 days ago | A high-performance, feature-packed library for creating interactive maps on the web |
react-simple-maps | 3,109 | 3 months ago | An SVG mapping component library for React, built on top of d3-geo |
Tangram | 2,213 | almost 2 years ago | WebGL map rendering engine for creative cartography |
TerriaJS | 1,185 | 7 days ago | TerriaJS is a library for building rich, web-based geospatial data explorers |
Wrld.js | 430 | over 1 year ago | Animated 3D city maps based on Leaflet |
π¨βπ» JavaScript Libraries / Data Processing | |||
Arc.js | 369 | about 2 years ago | Calculate great circles routes as lines in GeoJSON or WKT format |
awesome-GeoJSON | 2,268 | 4 months ago | Catalogue of GeoJSON tools |
Euclid.ts | 123 | 9 days ago | 2D Euclidean geometry classes, utilities, and drawing tools |
flatbush | 1,421 | about 2 months ago | A really fast static spatial index for 2D points and rectangles in JavaScript |
FlatGeoBuf | 688 | 5 days ago | A performant binary encoding for geographic data based on flatbuffers |
flatten-js | 561 | about 2 months ago | For manipulating geometrical shapes, finding intersections, checking inclusion, calculating distance, transformations, and more |
Galton | 272 | about 3 years ago | Lightweight Node.js isochrone server |
gdal3.js | 325 | 3 months ago | Convert raster and vector geospatial data to various formats |
geoblaze | 181 | 4 months ago | A blazing fast JavaScript raster processing engine |
geobuf | 979 | almost 3 years ago | Geobuf is a compact binary encoding for geographic data |
GeoTiff.js | 880 | about 1 month ago | Parse TIFF files for visualization or analysis |
geolib | 4,225 | 7 months ago | Library to provide basic geospatial operations |
geopackage-js | 311 | 3 months ago | The GeoPackage JavaScript library provides the ability to read GeoPackage files |
geoparquet | 829 | 29 days ago | Encoding geospatial data in Apache Parquet |
geotoolbox | 59 | 9 months ago | Provides several GIS operations for use with geojson properties |
geojson-merge | 233 | over 4 years ago | Merge multiple GeoJSON files into one FeatureCollection |
geojson-vt | 1,896 | 5 months ago | A highly efficient JavaScript library for slicing GeoJSON data |
Geometric.js | 980 | about 1 month ago | A JavaScript library for doing geometry |
JSTS | 1,485 | 7 months ago | JavaScript Topology Suite |
koop | 675 | 10 days ago | A JavaScript toolkit for connecting incompatible spatial APIs |
math.gl | 412 | 7 months ago | JavaScript math library focused on Geospatial and 3D use cases |
Proj4js | 2,031 | 23 days ago | Transform coordinates from one coordinate system to another |
rbush | 2,472 | about 2 months ago | RBush is a high-performance JavaScript library for 2D spatial indexing |
spl.js | 172 | 6 months ago | Makes it possible to use SpatiaLite functionality in JavaScript |
statsbreaks | 22 | 4 months ago | Split a quantitative dataset into classes for thematic mapping |
supercluster | A very fast JavaScript library for geospatial point clustering | ||
Turf.js | 9,367 | 7 days ago | A JavaScript library for spatial analysis |
topoJSON | 4,689 | 2 months ago | Convert GeoJSON to TopoJSON for use in D3 maps |
Wicket | 586 | about 3 years ago | A modest library for moving between Well-Known Text (WKT) and various framework geometries |
π¨βπ» JavaScript Libraries / LiDAR | |||
Plasio | 507 | over 4 years ago | Drag-n-drop In-browser LAS/LAZ point cloud viewer |
Potree | 4,599 | 3 months ago | WebGL point cloud viewer for large datasets |
Potree & Cesium.js | Rezt, Austria LIDAR viewer | ||
Three.js | Point cloud data loader | ||
π¨βπ» JavaScript Libraries / Remote Sensing | |||
EOSDIS Worldview | 704 | 6 days ago | Interactive interface for browsing global, full-resolution satellite imagery |
Google Earth Engine | Geospatial processing service | ||
Sentinel Hub custom scripts | 662 | 9 days ago | A repository of custom scripts to be used with Sentinel Hub |
sentinelhub-js | 52 | 7 days ago | Download and process satellite imagery using Sentinel Hub services |
Spectral | Awesome Spectral Indices for the Google Earth Engine JavaScript API | ||
πΎ Data sources / Downloads | |||
ArcGIS Hub | Over 380,000 open datasets | ||
Copernicus global DEM | Global elevation tiles | ||
Copernicus open access hub | Copernicus satellite imagery download | ||
ETOPO1 | 1 arc-minute global relief model of Earth's surface | ||
European population grids - GISCO | Population figures in grid cells | ||
European Postcodes Point Data | Location of postal codes across Europe | ||
Geoboundaries | The world's largest open, free political boundaries database | ||
Geodata.gov.gr | Open geospatial data for Greece | ||
Global Biodiversity Information Facility (GBIF) | Open access to biodiversity data | ||
Global Climate Monitor | Global open climate data | ||
Global power plant database | Open source database of power plants | ||
Galileo | Geospatial data discovery and management platform | ||
Healthcare Services in Europe | Locations of healthcare services in Europe | ||
HydroSHEDS | Consistent hydrographic data for global applications | ||
NASA Earth Data | Search, discover, visualize, refine, and access NASA Earth Observation data in your browser with Earthdata Search | ||
NASA Earth Observations | Browse and download satellite data imagery | ||
NASA SEDAC | Global Urban Polygons and Points Dataset | ||
Natural Earth | Free vector and raster map data | ||
OpenAerialMap | Open service for accessing licensed imagery | ||
OpenMapTiles | Free OpenStreetMap Vector Tiles | ||
OpenStreetMap | Free, world-wide geographic data set | ||
Open Topography | High-resolution topography data and tools | ||
Ookla internet speed data | 230 | 4 months ago | Global network performance metrics |
Sentinel Hub custom scripts | 662 | 9 days ago | Repository of custom scripts for Sentinel Hub |
USGS Earth Explorer | Query and order satellite images and more | ||
World Atlas TopoJSON | 1,055 | over 3 years ago | Natural Earth's vector data as TopoJSON |
World Bank | Free access to global development data | ||
WorldPop | Open access spatial demographic datasets | ||
πΎ Data sources / Web APIs | |||
Address API | Pan-European address data with geocoding and reverse-geocoding | ||
API Geo | Official French geographical data API | ||
ArcGIS location services | Basemaps, Geocoding, Places, routing, and GeoEnrichment | ||
bng2latlong | Converts British National Grid to latitude and longitude | ||
breezometer | Air Quality, Weather, Pollen, and Environmental data | ||
Country State City API | Database of city, state, and country data | ||
Geoapify | Geospatial services such as maps, geocoding, and routing | ||
geonames | Supports placename lookup and reverse geocoding | ||
Geocode.xyz | Reverse geocoding, forward geocoding, and geoparsing API | ||
GISCO data distribution API | European Commission data source for administrative regions and boundaries | ||
GraphHopper Route Optimization API | Solves various vehicle routing problems | ||
movebank-api | 142 | about 2 months ago | Platform for animal tracking data |
OpenAQ | Largest open-source air quality data platform | ||
Open Charge Map API | Public registry of electric vehicle charging locations | ||
OpenCage | Forward and reverse geocoding API using open data | ||
Open-Meteo | Global weather forecast API | ||
Open Notify | ISS location and number of people in space | ||
Open Postcode Geo API | British postcodes with geospatial data | ||
OpenSky API | Retrieve live airspace information | ||
openrouteservice | Directions, isochrones, and geocoding services | ||
OpenStreetMap | Retrieve OpenStreetMap data via Overpass API | ||
opentopodata API | Open Topography Data API | ||
Overpass API | Retrieve OpenStreetMap data | ||
RainViewer | Free weather radar and satellite data API | ||
REST countries | Get country information via a RESTful API | ||
Sunrise and sunset | Provides sunset and sunrise times for locations | ||
TomTom | Geocoding, routing, traffic, and more | ||
USGS earthquake data | Search earthquake data by various parameters | ||
what3words | Converts 3-word addresses to coordinates | ||
πΎ Data sources / Collections | |||
awesome-public-datasets | 60,953 | 8 days ago | An awesome repository full of open datasets from an abundance of different categories |
Free GIS data | Links to over 500 sites providing freely available geographic datasets | ||
Public APIs | 3,974 | 3 days ago | A collective list of free APIs for use in software and web development |
WRI | World Resources Institute | ||
π Notebooks / Beginner | |||
Hello, Leaflet | ObservableHQ | ||
Hello, Bertin.js | Nicolas Lambert | ||
Hello, Mapbox GL | Mike Bostock | ||
Hello, eurostat-map.js | Joe Davies | ||
Hello, gridviz | Nicolas Lambert | ||
π Notebooks / Intermediate | |||
World Tour | D3 | ||
Choropleth | D3 | ||
How to make a nice scalebar | Julien Gaffuri | ||
#GISCHAT Twitter Users with MapBoxGL - Globe Projection | Chris Marx | ||
Hexgrid maps with d3-hexgrid | Larsvers | ||
Bivariate Choropleth with Continuous Color Scales | Stephanie Tuerk | ||
Visualizing Eurostat grid data using Three.js & D3 | Joe Davies | ||
π Notebooks / Advanced | |||
Try to impeach this? Challenge accepted! | Karim Douieb | ||
Bars and pubs in Paris | Nicolas Lambert | ||
Brussels Street Gender Inequality | Karim Douieb | ||
Animating voting maps with regl | Benjamin Schmidt | ||
Election maps as dorling striped circles | Julien Gaffuri | ||
GeoParquet on the web | Kyle Barron | ||
Interactive Regl wind demo | Daniel Kao | ||
Dorling cartogram of the Spanish Presidential election | AdriΓ‘n Blanco | ||
Visualizing earthquakes with Three.js | Joe Davies | ||
GeoArrow and GeoParquet in deck.gl | Kyle Barron | ||
Web maps | |||
Map of notable people | Topi Tjukanov | ||
Submarine cable map | TeleGeography | ||
Radio Garden | 3D Globe Radio Tuner | ||
Map of every building in the United States | New York Times | ||
Map of the Roman transport network | The Stanford Geospatial Network Model of the Roman World | ||
Webgl Wind | 962 | over 2 years ago | A WebGL-powered visualization of wind power. Capable of rendering up to 1 million wind particles at 60fps |
Statistical Atlas | A leaflet-powered atlas showcasing Eurostat's statistics | ||
ShadeMap | Every mountain, building and tree shadow in the world simulated for any date and time | ||
ClimateArchive | An interactive visualisation of climate model data across time and space | ||
Old Maps Online | Browse historical places and search for old maps with timeline | ||
π Web apps | |||
city roads | Render every single road in any city at once | ||
Datawrapper | 1,360 | 11 days ago | Create charts, maps, and tables |
Fantasy Map Generator | 4,617 | 6 days ago | Free web application for creating and editing fantasy maps |
geotiff.io | Provides quick access to easy-to-use raster processing | ||
IMAGE | Tool for generating thematic maps | ||
Kepler | A powerful open-source geospatial analysis tool for large-scale datasets | ||
magrit | An online application for thematic mapping | ||
mapshaper | Online editor for map data | ||
MapOnShirt | Create colorful designs from maps and turn them into products | ||
Maputnik | 2,125 | 7 days ago | Free and open visual editor for Mapbox GL styles |
mapus | 3,381 | over 2 years ago | Tool for collaboratively exploring and annotating maps |
Peak Map | 606 | 4 months ago | Visualizes elevation of any area on the map with filled area charts |
Plasio | 507 | over 4 years ago | Drag-n-drop in-browser LAS/LAZ point cloud viewer |
StoryMap JS | Open-source alternative to ESRI's Story Map application | ||
TopoExport | Export 2D contour lines and 3D topography using open-source datasets | ||
uMap | 1,193 | 5 days ago | Create maps with OpenStreetMap layers and embed them in your site |
π¨ Colour advice | |||
CartoColor | 223 | about 2 months ago | A set of custom color palettes built on top of standards for color use on maps |
Chroma.js Color Palette Helper | Chroma.js-powered tool for mastering multi-hued, multi-stop color scales | ||
ColorBrewer | Colour advice for maps, based on Dr. Cynthia Brewer's research | ||
Dicopal.js | 32 | 8 months ago | Discrete color palettes for JavaScript |
Textures.js | 6,038 | almost 2 years ago | JavaScript library for creating SVG patterns, designed for data visualization |
viz-palette | Tool optimized for tweaking, copying, and pasting colors in and out of JavaScript | ||
π Icons | |||
font-GIS | 256 | 3 months ago | A very very cool icon font set for use with GIS and spatial analysis tools |
Map Icons Collection | A set of more than 1000 free and customizable icons to use as placemarks for your POI (Point of Interests) locations on your maps | ||
Material Symbols | Over 2,990 glyphs in a single font file with a wide range of design variants | ||
Geoapify map marker playground | The Marker Icon API lets you create beautiful icons and use them as Map Markers | ||
πΊ Videos | |||
Mapping Geolocation with Leaflet.js - Working with Data and APIs in JavaScript | The Coding Train | ||
10 Maps, and the Tech and Stories Behind Them | Maarten Lambrechts | ||
Intermediate Three.js Tutorial - Create a Globe with Custom Shaders | Chris Courses | ||
Statistical Cartography - Design principles for statistical map design | Julien Gaffuri | ||
π Further reading | |||
Fundamentals of Data Visualization | Claus O. Wilke | ||
A Workbook for Interactive Cartography and Visualization on the Open Web | 196 | 8 months ago | Robert Roth, Carl Sack, Gareth Baldrica-Franklin, Yuying Chen, Rich Donohue, Lily Houtman, Tim Prestby, Robin Tolochko, Nick Underwood |
Thematic Mapping: 101 Inspiring Ways to Visualise Empirical Data | Kenneth Field | ||
Color use guidelines for mapping and visualization | Cynthia A. Brewer | ||
Contributing | |||
suggestion issue | 446 | 22 days ago | Filling a (easier) |
pull request | 446 | 22 days ago | Opening a |