Supported browsers
ArcGIS Maps SDK for JavaScript 4.30 supports the following browsers:
- Chrome 122 or later
- Edge 122 or later
- Firefox 125 or later
- Firefox 115 (ESR)
- iOS Safari 16 or later
- Safari 16 or later
For best performance use the latest versions of the browsers listed above.
Only WebGL2-enabled, 64-bit browsers are supported.
Minimum hardware requirements
- Desktop browsers - at least 8 GB system memory.
- Mobile devices - at least 4 GB system memory.
Working with complex applications might require additional memory and better CPUs. GPUs and hardware acceleration are also important for basic performance of the API library, for both physical and virtualized environments. Hardware, including the GPU and drivers, should be currently supported by the manufacturer.
Mobile devices impose limitations on browser memory and CPU usage. This can be further affected by running other applications on the device.
To test for hardware acceleration, open https://webglreport.com in a
browser. A Major Performance Caveat value
of No
indicates hardware acceleration is available. A value of Yes
indicates it is not available,
and the API library will automatically attempt to improve 2D map interaction and user experience by
switching to a degraded rendering mode that reduces CPU utilization.
Virtualized environments
Within Virtual Desktop Infrastructure (VDI) and Remote Desktop Services (RDS) environments, each virtual desktop, machine or session must meet the minimum hardware requirements listed above per user. The following are recommendations for minimum performance:
- At least 2 virtual CPUs (vCPUs) per user.
- Use a physical GPU in the host server and allocate virtual GPU (vGPU) resources for each user.
- Use the client specifically designed for your VDI or Remote Desktop Connection (RDC).
- Run performance tests and periodically adjust the host server and client configurations for GIS workflows.
Feature-specific requirements
- SceneView
- Not supported on displays with a resolution above 4K
API classes and modules can have additional system requirements noted on a class by class basis in the API reference. For example, due to security considerations the Locate widget and Track widget don't work on insecure origins. The Fullscreen widget only works with browsers that implement the Fullscreen API. Thus, this feature is not supported on iOS Safari.
WebGL extensions
The API has the following features which require WebGL2 extensions that might not always be available in your browser:
- SceneView
- SceneView.qualityProfile with settings
"high"
or"medium"
to support high quality transparency - VoxelLayer
- ImageryTileLayer
- HeatmapRenderer
- SceneView.qualityProfile with settings
To use these features with optimal visual quality, the extension EXT
is required. For the HeatmapRenderer also OES
is required. If any one of these extensions is not available, the HeatmapRenderer requires EXT
instead to visualize any data in SceneView. For VoxelLayer the extension EXT
is additionally required when displaying data of type IN
or UIN
.
To test if a device supports these WebGL2 extensions, open https://webglreport.com on the device's browser and check the extensions list.
npm
Make sure you are using the latest LTS version of node.js and npm.
Peer dependencies
The functionality of the component packages depends on compatible versions of @arcgis/core
and @esri/calcite-components
, which are defined in a component's package.json
as peer
.
These peer dependencies are installed by default when using npm as your preferred package manager:
- @arcgis/core: ~4.30.0
- @esri/calcite-components: ^2.11.1
Dependencies
These packages are required for the component packages to work correctly and they are automatically installed when using npm.
They are defined in the component package's package.json
as dependencies
:
- @stencil/core: 4.17.1.
Versioning
You may have your own requirements to use a specific version of these dependencies. In that case, you will need to install the dependencies manually and respect the following versioning rules:
- @arcgis/core - only use a compatible patch version (e.g., tilde ~)
- @esri/calcite-components - only use any compatible minor version (e.g., caret ^)
- @stencil/core - must use the same version as the component package
About web servers
If developing a traditional web application that is to be accessed via the browser, the recommended approach is to deploy it to a web server and access it via http:// or https:// rather than file
.
In embedded scenarios, e.g. Microsoft PowerBI, Windows Store app, or Adobe Creative Cloud, a web server is not necessary for using the ArcGIS Maps SDK for JavaScript.
Web server hosting configuration
The web server hosting configuration where you host the ArcGIS Maps SDK for JavaScript will need the following MIME/type registration.
extension | MIM | Description |
---|---|---|
.ttf | application/octet-stream | True Type Fonts |
.wasm | application/wasm | WebAssembly |
.woff | application/font-woff | Web Open Font Format |
.woff2 | application/font-woff2 | WOFF File Format 2.0 |
.wsv | application/octet-stream | Supports Scene 's stars visualization |
.pbf | application/x-protobuf | Fonts for MapView labeling for some layers |
Note that a web server supporting HTTPS
requires the web server to use an SSL web server certificate.
Product Life Cycle
We recommend reviewing both the ArcGIS Maps SDK for JavaScript's Product Life Cycle page and the Developer Technologies section in the Esri Product Life Cycle Support Policy document. They contain detailed information on specific API version release dates and the associated product life cycle phases.