awesome-arcgis-developers
by Esri
A curated list of resources to help you with ArcGIS development, APIs, SDKs, tools, and location services
AI summary
ArcGIS dev tools
A curated collection of resources to help developers build ArcGIS mapping and spatial analysis applications.
- stars
- 246
- forks
- 25
- watching
- 15
- awesome lists
- 4
- entries
- 174
What's in the list
174 links in 18 sections, with live GitHub stats.activeno commit in 2y
APIs and SDKs
- ArcGIS API for Python
Guides, sample notebooks and API reference to do mapping, spatial analysis, data science, geospatial AI and automation using Python
ArcGIS CityEngine SDKs (C++)
C++ APIs, documentation and examples for the Procedural Runtime (PRT)
ArcGIS CityEngine SDKs (Python)
Python bindings for the "Procedural Runtime" (PRT) of CityEngine
- ArcGIS Earth Automation API
Guide, API reference and samples to communicate with ArcGIS Earth
- ArcGIS Enterprise SDK
Guides, API reference and sample code to extent ArcGIS Enterprise
- ArcGIS Maps SDK for .NET
Guides, sample codes and API reference to build desktop and mobile apps using .Net
- ArcGIS Maps SDK for Java
Guides, sample codes and API reference to build desktop apps
- ArcGIS Maps SDK for JavaScript
Guides, sample code, API references and showcase to build 2D and 3D interactive web apps unlocking geospatial data
- ArcGIS Maps SDK for Kotlin
Guides, sample codes and API reference to build mobile apps using Kotlin
- ArcGIS Maps SDK for Qt
Guides, sample codes and API reference to build mobile and desktop apps
- ArcGIS Maps SDK for Swift
Guides, sample codes and API reference to build mobile apps using Swift
- ArcGIS Maps SDK for Unity
Guides, API reference and sample code to use ArcGIS data and services to develop for Unity
- ArcGIS Maps SDK for Unreal Engine
Guides, API reference and sample code to use ArcGIS data and services to develop for Unreal Engine
- ArcGIS Pro SDK for Microsoft .NET
Documentation, tutorials, API reference, FAQ, etc. to extend ArcGIS Pro Desktop
- ArcGIS REST APIs
General documentation about ArcGIS REST APIs: location services, content management, portal administration, and more
ArcGIS REST APIs collections
Postman collections to work with some of the REST APIs: location services, hosted feature layers, ArcGIS Online, ArcGIS Hub, etc
- ArcGIS REST JS
Key concepts, tutorials and API reference of a collection of JavaScript modules for accessing location services, ArcGIS Online, and ArcGIS Enterprise REST APIs
- ArcGIS Urban API
Public GraphQL web service that can be used to interact with ArcGIS Urban data directly
- ArcObjects SDK for .Net
Documentation about the .Net SDK for the library of Component Object Model (COM) components that make up the foundation of ArcGIS
- ArcObjects SDK for Java
Documentation about the Java SDK for the library of Component Object Model (COM) components that make up the foundation of ArcGIS
- ArcPy
Documentation about the python package to perform geographic data analysis, data conversion, data management, and map automation in ArcGIS Desktop or ArcGIS Enterprise environments
- Esri Leaflet
Key concepts, tutorials, API reference, plugins, sample code to help you build web apps using Leaflet with ArcGIS Location services
- MapLibre GL JS
Guide and tutorials to help you start building web apps with MapLibre and ArcGIS location services
- OpenLayers
Guide and tutorials to help you start building web apps with OpenLayers and ArcGIS location services
ArcGIS location services
- ArcGIS location services Postman Workspace
Postman collections to facilitate work with many of the location services
- Basemap styles service (v1)
Access streets, satellite, and other basemap styles for maps and scenes
- Basemap styles service (v2)
Access multiples map styles, add places of interest, set labels languages, word views and more
- Places service
Search for businesses and geographic locations around the world with detailed information about each place
- Elevation and hydrology services
Generate elevation profiles and viewsheds, but also can trace water flow and generate watersheds
- Geocoding service
Search for addresses, businesses, and places around the world
- GeoEnrichment service
Find facts and demographic information about a location or area
- Routing service
Get turn-by-turn directions and solve advanced routing problems
- Printing tools service
Generate static maps (png, jpg, pdf, etc.) from advance web maps
- Spatial analysis service
Process spatial datasets to discover relationships and patterns
- Offline packaging service
Create and manage preplanned map areas for generating offline maps
Code samples and snippets
application-base-js
Core class for creating a configurable application using JavaScript/TypeScript
- ArcGIS API for JavaScript Sample Code
Esri's official JavaScript API product team samples
- ArcGIS API for Python Sample Notebooks
Esri's official Python API product team samples
ArcGIS Arcade Expression Templates
Collection of reusable Arcade expressions across all supported profiles
- ArcGIS Code Sharing
Search, browse, and use code, scripts, models, add-ins, widgets, and more
- ArcGIS Maps SDK for Unity samples
Esri's official ArcGIS Maps SDK for Unity product team samples
- ArcGIS Maps SDK for Unreal Engine samples
Esri's official ArcGIS Maps SDK for Unreal Engine product team samples
ArcGIS REST JS demos
Demo apps built by Esri's REST JS maintainers
- ArcGIS Maps SDK for Java samples
Esri's official ArcGIS Maps SDK for Java product team samples. (deprecated)
- ArcGIS Maps SDK for .NET MAUI samples
Esri's official ArcGIS Maps SDK MAUI product team samples
- ArcGIS Maps SDK for .NET UWP samples
Esri's official ArcGIS Maps SDK for .NET product team samples
- ArcGIS Maps SDK for .NET WinUI samples
Esri's official ArcGIS Maps SDK WinUI product team samples
- ArcGIS Maps SDK for .NET WPF samples
Esri's official ArcGIS Maps SDK for .NET product team samples
- ArcGIS Maps SDK for Android Java samples
Esri's official ArcGIS Maps SDK for Android product team samples for Java
- ArcGIS Maps SDK for Android Kotlin samples
Esri's official ArcGIS Maps SDK for Android product team samples for Kotlin
- ArcGIS Maps SDK for iOS sample code
Esri's official ArcGIS Maps SDK for iOS product team samples
- ArcGIS Maps SDK for Qt C++ sample code
Esri's official ArcGIS Maps SDK for Qt product team samples for C++
arcgis-js-api-starter-apps
Collection of boilerplates to get started with the ArcGIS API for JavaScript 4.x
Esri/arcgis-js-vscode-snippets
Collection of Visual Studio Code snippets for common code patterns for the ArcGIS API for JavaScript
Esri/developer-support
Community samples to help be successful with all ArcGIS developer products (Python, NET, JavaScript, Android…)
Esri/jsapi-resources
A collection of resources for developers using the ArcGIS API for JavaScript
Esri/pyprt-examples
Example for PyPRT (Python Bindings for the CityEngine SDK)
esri-loader Examples
Examples of how to use the ArcGIS API for JavaScript via esri-loader in applications built with React, Angular, Vue, and other frameworks
- EsriDevEvents
Supplemental source code, example projects, and resources supporting Esri Developer Summits, Developer Day at Esri UC, FedGIS, #GeoDev webinars, meetups, etc
esrinederland/CoolMaps
Shows cool example maps you can use
esrinederland/CoolScripts
Esri Netherlands scripts and snippets for reuse
RalucaNicola/code-snippets-arcgis-api-js
A collection of code snippets for ArcGIS API for JavaScript
Data conversion tools
arcgis-json-to-geojson
Convert layer in ArcGIS JSON spec to GeoJSON spec
- csv2geojson
Convert points from CSV format to GeoJSON
- Distillery
Web application to simplify and project TopoJSON
- Feature Service Layer
Use the parameter to return generalized geometries with the operation
- Generalize method
GeometryEngine can produce a geometry with fewer vertices programatically. Several APIs supports it: JavaScript, iOS, Android, .NET, Qt and Java
gdal
Translator library for raster and vector geospatial data formats
geojson2svg
Render GeoJSON into SVG using inline or external stylesheet
geojsonio
Convert many data formats to and from GeoJSON and TopoJSON
gpxstudio
Online and open source GPX file editor
gtfs2geojson
Convert GTFS data into GeoJSON
img2geojson
Drag an image onto a map, trace the paths you need, and export as GeoJSON
- Koop
JavaScript toolkit for connecting spatial APIs. Transform geospatial data on the fly and serve as GeoJSON, vector tiles, feature services and more
loam
JavaScript wrapper for GDAL in the browser
- PostGIS ST_Simplify
This operation returns a "simplified" version of the given geometry using the Douglas-Peucker algorithm
terraformer
Convert ArcGIS JSON to and from GeoJSON, convert WKT geometries to and from GeoJSON geometries, and other formats
- togeojson
Convert KML and GPX to GeoJSON, without the fuss
tokml
Convert GeoJSON to KML
Data integration tools
- ArcGIS Data Interoperability Extension
Desktop tool to transform +400 data formats
- FME Server
ETL allowing to easily transform almost any dataset into an ArcGIS compatible format and vice-versa. Support for 500+ formats and technologies
- Make.com
iPaaS to automate repetitive tasks involved in using Survey123 and make your work easier
- node-red-contrib-arcgis-rest
Query, delete, update or insert data with low-code programming for event-driven applications of the JS Foundation
- Zapier for ArcGIS
iPaaS to automate integrations without writing any code
- Tray.io
Manual, scheduled and webhook triggers to apply edits, get features, layers, etc. using Tray Platform's ArcGIS connector
Debugging tools
- cors-test.codehappy.dev
App to test CORS requests
- Fiddler Classic
Windows tool that logs HTTP(s) network traffic
- GeoJSONLint
Validate and view your GeoJSON
- json-schema.org
Vocabulary that allows you to annotate and validate JSON documents (include multiple validators)
- mapbox/geojson-vt/debug
Validate GeoJSON or TopoJSON
- Postman interceptor
Interceptor enables you to sync cookies from your browser and capture network requests directly from Chrome
- netbalancer.com
Windows application for local network traffic control and monitoring
Design and styling / Best practices, books, videos and training:
- Cartography and Making Stunning Maps
Short video showing some examples on what can be achieved using different blend modes effects
- How to style using ArcGIS Online
Playlist with a collection of short videos showcasing some ArcGIS styling capabilities
- Photoshop-style Graphics Effects for Your Layers and Data
Video explaining how to use blend modes as well as layer and feature effects to create unique and stunning web maps using the ArcGIS API for JavaScript 4.x
- MapUIPatterns
Best practices & design principles. UI Patterns describe solutions to observed and recurring design problems
Design and styling / Developer tools:
- Calcite Design System
Collection of mapping icons, web components, and good practices
Design and styling / GUIs:
- ArcGIS Vector Tile Style Editor
Style vector tile basemap layers for applications
arcgis-vectortile-style-editor
Minimalistic tool to update the styles of Esri Vector Basemaps through JSON
EsriUK mapstyler
Quickly style an Esri vector tile layer using an image
Developer guides
- Content management
Store, manage, and access private and public content
- Data hosting
Store, manage, and access your data as data services
- Demographics
Discover local facts and demographic information with the GeoEnrichment service
- Maps
Display 2D maps and 3D scenes using the basemap layer service and data services
- Offline
Display, analyze, and edit data while disconnected
- Routing
Find routes and directions with the routing service
- Search
Search for addresses, businesses, and places of interest (POIs) with the geocoding service
- Security and authentication
Access services and content using API keys and OAuth 2.0
- Visualization
Style layers to visualize data in 2D and 3D
Helpers
arcgis-geometry-calculations
Web application to create and grab ArcGIS geometry calculations
arcgis-js-api-camera-helper
Web application to get the camera position JSON object for 3D web apps in the ArcGIS API for JavaScript 4.x
- arcgis-js-api-extent-helper
Web application to get the map extent JSON object for web apps in the ArcGIS API for JavaScript 4.x
- ArcGIS JS API Module Butler
VSCode extension for quickly adding ES import statements for the @arcgis/core package without leaving your current code context
- epsg.io
Website to discover and transform coordinate systems from all over the world
esri-loader
A tiny library to help you lazy-load the ArcGIS API for JavaScript (i.e. from the CDN) in applications built with popular JavaScript frameworks and bundlers
esri-loader-hooks
Custom React hooks for using the ArcGIS API for JavaScript with esri-loader
geojson-random-generator
Generate and download random GeoJSON quickly for testing
reducegeojson
A tool to reduce the file size of GeoJSON files for web optimisation
histogrand
Random value generator according to customized histograms
mercator-geographic-converter
Simple coordinate converter between Geographic units (latitude, longitude) and Mercator units (x, y)
react-sceneview
A simple Esri SceneView react component that builds on the ArcGIS API for JavaScript
- bboxfinder
Simple web application to get the coordinates of a bounding box drawn on the map
- snippets client side raster functions
The client-side raster functions are operations that apply processing directly to the source image pixels
Map and data exploration
- ArcGIS Map Viewer
Web application to create, explore, and share web maps for 2D applications
- ArcGIS Map Viewer (classic version)
Web application to create, explore, and share web maps for 2D applications
- ArcGIS Scene Viewer
Web application to create, explore, and share web maps for 3D applications
- Geo Data Viewer
VSCode extension for Geo Data Analytics. Support to generate and view maps
geojson.io
Web application to visualize, generate and edit geospatial vector data. Supports GeoJSON, TopoJSON, CSV, KML, WKT, and shapefile
Mapshaper
Web application to simplify shapes, edit attribute data, clipp, erase, dissolve, filter, etc. Supported file formats: Shapefile, GeoJSON, TopoJSON and CSV files
- Smart Mapping
It is built-in in the Map and Scene viewer, but some APIs like JavaScript and Python also provide utilities to help building data explorations tools
- VSCode Map Preview
Extension for visually previewing geospatial file content (GeoJSON, KML, etc) on a map
Playgrounds
- arcgis-arcade-playground
Try the portable scripting language for creating ArcGIS custom visualizations and labeling expressions
cim-symbol-builder
Generate CIM symbols to work with ArcGIS client APIs and feature services
- geometry-inspector
Quickly show EsriJSON, GeoJSON, or WKT on a map, or draw on a map to get EsriJSON, GeoJSON, or WKT
- js-symbol-playground 3.x
Generate symbols to work with the ArcGIS API for JavaScript 3.x
- js-symbol-playground 4.x
Generate symbols to work with the ArcGIS API for JavaScript 4.x
- Postman workspaces
Postman collections to experiment with location services and authentication
Spatial Analysis
Esri/gis-tools-for-hadoop
Collection of GIS tools for spatial analysis of big data
Esri/spatial-framework-for-hadoop
Allows developers and data scientists to use the Hadoop data processing system for spatial data analysis
- Client-side Geometry Engine
Allows you to test spatial relationships, calculate new geometries, and measure lengths, areas, distances, etc
Spatial Analysis / Client-side Geometry Engine
- ArcGIS API for JavaScript geometryEngine
Works for browsers and Node.js
Spatial Analysis
- Spatial analysis service
Process spatial datasets to discover relationships and patterns
- Turf.js
Geospatial analysis for browsers and Node.js
Specifications
Cartographic Information Model spec
Map content specification used to persist and transfer cartographic descriptions of GIS datasets represented in JSON
- Common data types
JSON formats of the geometry and spatial reference objects as returned by ArcGIS REST API: Point, Multipoint, Polyline, Polygon and Envelope
GeoServices spec
Open Web Foundation REST-based API that provides a complete access to structured geospatial data used by Esri
Indexed 3D Scene Layers
Service and package standard of containers for arbitrarily large amounts of geographic data
- Shapefile Format
Spec for the geospatial vector data format for GIS software
- Spatial reference specifications
List of Well-Known ID (WKID) integer value or a text string definition referred to as Well-Known Text (WKT) to define a spatial reference
Tile Package Specification
Compressed file containing a set of tiles and a tiling scheme, which can be used as a basemap in ArcGIS applications
- Web Map spec
Sharable 2D maps. It describes the JSON object which defines a web map
- Web Scene spec
A JSON structure that defines the contents (viewpoint, camera, basemap layer, layers, styles, etc.) for a shareable 3D scene
Starter apps and CLIs
@arcgis/cli
Quickly scaffold various applications for the ArcGIS API for JavaScript
generator-esri-appbuilder-js
Yeoman generator to help customize Esri's Web AppBuilder
koop-cli
Tool to scaffold Koop applications and plugins
awesome-arcgis
Awesome list with a wiki flavor with resources about Esri and ArcGIS organized by: products, industries, file formats, content providers, etc
awesome-earthobservation-code
Tools, tutorials, code, helpful projects and links about Earth Observation and Geospatial stuff
awesome-geojson
GeoJSON utilities: operations,editors & viewers, validation, services, conversion, etc
awesome-geospatial
Databases, radar, lidar, web map development, etc
awesome-gis
GIS, remote sensing, 3D apps, Web Map Servers, Geospatial libraries, Open Standards, data, etc
awesome-json-datasets
JSON datasets that don't require authentication about: climate, crime, goverment, NASA, travel, etc
awesome-open-geoscience
Curated from repositories that make our lives as geoscientists, hackers, and data wranglers easier or just more awesome
awesome-public-datasets
A topic-centric list of high-quality open datasets
awesome-remote-sensing-change-detection
List of datasets, codes, and contests related to remote sensing change detection
awesome-satellite-imagery-datasets
List of satellite image training datasets with annotations for computer vision and deep learning
awesome-semantic-segmentation
Networks by architecture (semantic segmentation, instance aware segmentation, etc.), RNN, GANS, datasets, and more
awesome-vector-tiles
Implementations of the Mapbox Vector Tile specification: parsers & generators, clients, apps and command line tools, CLI utilities, servers, etc
previously logged issues
Take a look at
Nothing in this list matches your filter.
Featured in 4 awesome lists
Each link jumps to the spot where the list mentions awesome-arcgis-developers.
More related projects
agri-hub/callisto-dataset-collection163
esri/geometry-api-java693
minzhang-whu/change-detection-review841
esri/geoprocessing-tools-for-hadoop75
bmwcarit/barefoot676
maxrev-dev/gdal.netcore163
rouault/gdal-mini20
esri/palladio101
cyclejs-community/typescript-starter-cycle34
planetlabs/training-workshop12
kjordahl/scipy-tutorial-2015148
clarkcga/udef-arp25
bugra9/gdal3.js331
mchilli/macropad25