The biggest shift in a decade
Esri shipped SDK 5.0 in February 2026. If you've been following along with anything I've written on this site, you know I've been building with 4.x — single HTML files, CDN loaded, deployed to Vercel. Shelter dashboards. Choropleth maps. Hurricane tools. All 4.x.
So when 5.0 dropped, the first question was obvious: does my workflow break?
The short answer is no. The longer answer is more interesting.
Widgets are leaving
This is the headline. Every widget in the SDK — Search, Legend, LayerList, Popup, all of them — is deprecated at 5.0 and gets removed entirely at 6.0, roughly a year from now.
They're being replaced by web components. Instead of writing JavaScript to create a search bar:
const search = new Search({ view });
view.ui.add(search, "top-right");
You write HTML:
<arcgis-map>
<arcgis-search position="top-right"></arcgis-search>
</arcgis-map>
The search bar is now a standard HTML element. Like a <div> or a <button>. Drop it in your markup and it works.
For anyone building single HTML files — which is exactly what I've been advocating — this is actually simpler. Your map setup goes from 15 lines of JavaScript to a few lines of HTML. The map itself becomes a tag.
The AMD thing
The require() pattern that starts every 4.x tutorial is deprecated. If you've written this a hundred times:
require(["esri/Map", "esri/views/MapView"], function(Map, MapView) {
// everything goes in here
});
That's going away at 6.0. The replacement is standard ES module imports — the way every other JavaScript library works and has worked for years. The SDK was the holdout.
If you learned JavaScript through the ArcGIS SDK, this is a shift. If you've used any other modern library, this is the SDK finally catching up.
What you actually gain
Two things matter to me.
AI Components. SDK 5.0 includes an <arcgis-assistant> component — still in beta — that lets users interact with maps through natural language. Type a question, get map results. "Show me all shelters within 5 miles of the tornado path." This is the agentic maps pattern I've been writing about, except now it's built into the SDK instead of something I wire up manually with Claude.
Simpler architecture. Web components are a browser standard. They work with React, Vue, plain HTML, anything. They encapsulate their own styles. You don't need to understand Esri's widget lifecycle or UI management system. You write HTML.
What I'm doing about it
My existing 4.x demos work fine today. The CDN URL still serves. Nothing is broken.
But all new work starts on 5.0. That's the decision. I'm not rewriting working code on a deadline — there's no emergency. But I'm also not learning patterns that are being removed. New demos, new articles, new experiments — all 5.0.
The workflow doesn't fundamentally change. The CDN URL goes from js.arcgis.com/4.32/ to js.arcgis.com/5.0/. The component patterns are different but the architecture is the same: describe what I need, build it with Claude, deploy a single file.
The practical version
If you're just starting with the SDK — through AI or otherwise — start with 5.0. Don't learn the widget patterns that are being removed in a year.
If you have 4.x apps in production, they work today. Plan the migration. Don't panic about it.
If you're using AI to write SDK code, feed it working 5.0 examples. The SDK is new enough that Claude and other tools produce better output when they can see real patterns. Save your working demos and use them as context.
The SDK was always this powerful. AI made it accessible. And 5.0 makes the underlying architecture cleaner for the people building with it. That's the direction.
See the demos: Working examples — each one a single HTML file, each one built with the approach described here.