arcgis-core-utilities

Provide reactive programming, property watching, and background processing utilities for ArcGIS JS applications.

19|5|Updated Dec 14, 2025
One-click install
npx skills add https://github.com/SaschaBrunnerCH/arcgis-maps-sdk-js-ai-context --skill arcgis-core-utilities
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: arcgis-core-utilities
Source: https://github.com/SaschaBrunnerCH/arcgis-maps-sdk-js-ai-context/tree/main/contexts/4.34/skills/arcgis-core-utilities
Command: npx skills add https://github.com/SaschaBrunnerCH/arcgis-maps-sdk-js-ai-context --skill arcgis-core-utilities

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Core infrastructure utilities that standardize reactive programming, property watching, and background processing for ArcGIS Maps SDK apps.

Core Features & Use Cases

  • Accessor pattern for watchable properties and computed values.
  • Collection for observable arrays with change events and transformations.
  • reactiveUtils for watching state changes and composing reactive workflows.
  • promiseUtils for robust abortable promises, debouncing, throttling, and sequencing.
  • Workers for off-main-thread computation and long-running tasks.
  • Use Case: accelerate interactive dashboards by reacting to view changes without blocking the UI.

Quick Start

Install the ArcGIS core utilities in your project and begin wiring Accessor patterns, reactive utilities, and workers into your widgets.

Frequently Asked Questions about arcgis-core-utilities

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I handle reactive programming and property watching in ArcGIS JS apps?

Reactive programming in ArcGIS JS apps is handled using Accessor patterns for watchable properties and reactiveUtils to compose reactive workflows that trigger real-time UI updates without blocking the main thread.

What is the best way to run long-running computations off the main thread in ArcGIS Maps SDK?

Running long computations off the main thread in ArcGIS Maps SDK is achieved using Workers, which move heavy background processing tasks away from the UI to maintain smooth interactive dashboard performance.

How do I manage abortable promises and debouncing for asynchronous ArcGIS workflows?

Abortable promises and debouncing for asynchronous ArcGIS workflows are managed using promiseUtils, providing robust sequencing and throttling to handle rapid user interactions and prevent conflicting requests.

Can I use these reactive utilities to observe array changes in ArcGIS widgets?

You can observe array changes in ArcGIS widgets using the Collection utility, which provides observable arrays with change events and transformations to sync data layers with UI components reactively.

Do I need any external dependencies to use these core ArcGIS utilities?

You do not need external dependencies to use these core ArcGIS utilities, as the package implements Accessor patterns, reactiveUtils, and Workers as modular components with clear internal dependencies and no external requirements.

When should I use reactiveUtils over Accessor patterns for state management?

Accessor patterns should be used for defining watchable properties and computed values, while reactiveUtils is used for watching state changes and composing reactive workflows that span multiple UI components and data layers.