ipyleaflet renders as "Unsupported widget: LeafletMapModel" because it's a classic DOMWidget extension — no _esm field, no anywidget compatibility.
Current state
- 57+ built-in ipywidgets are supported via hand-written React components
- anywidget widgets work automatically (ESM + AFM spec)
- No plugin/extension system — widget support requires source changes
Options
- ipyleaflet adopts anywidget upstream — would work automatically, no nteract changes needed. Best path but depends on upstream.
- Dedicated built-in implementation — significant effort given ipyleaflet's complexity (Map, TileLayer, Marker, GeoJSON, draw controls, many layer types)
- Generic DOMWidget compatibility layer — would support ipyleaflet and other classic widget extensions, but substantial architecture addition
Workaround
Use folium instead for interactive maps — it renders as HTML output (now working with the CSP fix in #1496). No widget protocol needed.
ipyleaflet renders as "Unsupported widget: LeafletMapModel" because it's a classic
DOMWidgetextension — no_esmfield, no anywidget compatibility.Current state
Options
Workaround
Use folium instead for interactive maps — it renders as HTML output (now working with the CSP fix in #1496). No widget protocol needed.