Automated Portal Inventory
Discover all WAB apps across your Portal or ArcGIS Online org. Export to Excel with usage stats, ownership, and complexity scores.
- Filter by type keywords
- 90-day & 12-month usage metrics
- Full WAB config extraction
An intelligent pipeline that inventories, analyzes, routes, generates, validates, and reports — handling the repetitive conversion work so your team focuses on what matters: custom widgets, QA, and deployment.
$ python batch_runner.py --max-apps 50
[#] Scanning portal for WAB apps...
✓ Found 47 Web AppBuilder apps
[#] Analyzing widgets & routing...
→ Search → ExB (high)
→ LayerList → ExB (high)
→ GP Custom → SDK scaffold
→ Chart → ExB (medium)
✓ 38 routed to ExB
✓ 6 routed to SDK
✓ 3 routed to hybrid
✓ Validation passed: 42/47
✓ Reports generated for all apps
Done in 4m 12s
Organizations face hundreds of WAB apps with varying complexity, custom widgets, and no clear path forward. Rebuilding each one by hand is slow, expensive, and error-prone.
Manual migration takes days per app. With dozens or hundreds of apps, timelines stretch into years — and deadlines loom.
Senior GIS developers spend weeks on repetitive, mechanical conversion instead of high-value customization and innovation.
Leadership can't see what's been migrated, what's at risk, or how much work remains. Coordination overhead is massive.
Different developers produce different results. No standardized validation means defects slip through to production.
From discovery to deployment, the platform handles each step with deterministic logic and optional AI assistance for edge cases.
Discover all WAB apps across your Portal or ArcGIS Online org. Export to Excel with usage stats, ownership, and complexity scores.
Each widget is classified and routed to the best target: Experience Builder, JS SDK, or hybrid. 30+ widgets pre-mapped with confidence scores.
Generate Experience Builder JSON configs and/or complete JS SDK project scaffolds with TypeScript, Vite, and ArcGIS Map Components.
Every generated config is validated against an ExB JSON Schema before publishing. Duplicate IDs, missing data sources, and broken references are caught automatically.
Dry-run by default. When ready, publish validated ExB drafts directly to your Portal as Web Experience items — with republish support.
Per-app markdown reports, JSONL results feeds, and a CSV gap backlog — giving leadership full visibility into progress, risks, and remaining work.
Scan your Portal for all Web AppBuilder apps. Extract full configs, usage metrics, and metadata.
Classify every widget using deterministic mappings and optional LLM assistance. Score complexity.
Direct each app to the best path: ExB, SDK, or Hybrid.
Produce ExB JSON configs and/or complete JS SDK project scaffolds with all dependencies.
Schema validation gates publishing. Dry-run first, then publish to Portal when ready.
Generate per-app reports, gap backlogs, and portfolio summaries for stakeholders.
Estimate how much time and money the platform saves versus manual migration. Adjust the sliders to match your portfolio.
* Estimates based on ~80% automation of conversion work. Actual results vary by portfolio complexity. Expert time still required for custom widgets, QA, and deployment.
Validate the platform on your real apps before committing to a full program.
Full migration program for medium-to-large organizations with mixed complexity.
For large agencies and enterprises with 200+ apps, multi-org portals, or custom integrations.
No — and that's intentional. The platform automates the repetitive 80%: inventory, widget mapping, config generation, validation, and reporting. Your team reviews outputs, handles custom widgets via generated SDK scaffolds, performs QA, and manages deployment. This keeps experts focused on high-value work instead of mechanical conversion.
Widgets like Geoprocessing, Infographic, or custom widgets are automatically routed to the SDK path. The platform generates a complete JavaScript project scaffold with TypeScript component stubs, TODO comments, and all ArcGIS Map Components dependencies — so your developers start from a working project instead of a blank screen.
Yes. The platform defaults to dry-run mode, which generates all artifacts locally without touching your Portal. When you're ready, enable publishing and the platform creates new "Web Experience" draft items in a target folder — never modifying or deleting your original WAB apps.
The platform supports Anthropic Claude (default), Azure OpenAI (for Microsoft Copilot Enterprise), OpenAI, or none. LLM is used only for classifying unknown widgets and translating complex configs — all optional. Without an LLM, unknown widgets default to the SDK route with manual review.
Absolutely. The widget mapping table in wab_migration/config/widget_map.py is fully
extensible. Add your own mappings with config translators, confidence levels, and notes. The Portfolio
and Enterprise tiers include custom widget mapping extensions as part of the engagement.
For a portfolio of 50 apps, the pilot phase (inventory + dry-run) takes about 1 week. Full migration with publishing typically completes in 3–6 weeks depending on complexity mix and QA bandwidth. The platform processes apps in parallel with configurable concurrency.
Yes. The Enterprise tier supports on-premise and air-gapped deployments. The platform is a standard Python application with no cloud dependencies — it runs anywhere with network access to your ArcGIS Portal.
Book a free 30-minute demo. We'll run the inventory scanner on a sample of your apps and show you exactly what the migration looks like — before you commit to anything.