What's New
v9.4 - In Planning
Scope tracked in the v9.4 milestone.
@deck.gl-community/panels (NEW module)
A new module for deck-independent panel composition and small application UI.
PanelManager- mount compatible panel-managed UI into a plainHTMLElement- Panel/container composition APIs extracted into a dedicated package
- Stand-alone documentation and examples for panel composition outside deck.gl
BinaryDataPanel- NEW reusable panel for compact hex and ASCII previews of caller-supplied binary data.SplitterPanel- NEW composite panel for resizing two panel groups horizontally or vertically.- Panel APIs now use panel terminology throughout
@deck.gl-community/panels; deck.gl widget-facing wrappers remain in@deck.gl-community/widgets.
v9.3
Released: April 15, 2026
@deck.gl-community/geo-layers
SharedTile2DLayer- NEW experimental tiledCompositeLayerthat can share oneSharedTileset2Dacross multiple layer instances and multiple views.SharedTileset2D- NEW shared tile cache and loading engine for coordinated multi-view / multi-layer tile loading.TileGridLayer- NEW helper overlay for visualizing tile loading, tile bounds, and tile zoom depth while debugging tiled rendering.- New
SharedTile2DLayerexample showing one shared auto-tiled GeoJSONTableTileSourceand one sharedSharedTileset2Dfeeding multiple styled comparisons plus a minimap.
Highlights:
- deck.gl v9.3 compatibility
- Examples transitioned from React to "pure JavaScript" examples using deck.gl widget panels.
- Website and remaining React examples now build against React 19;
@deck.gl-community/reactaccepts both React 18 and React 19.
@deck.gl-community/basemap-layers (NEW module)
A new experimental basemap module for rendering style-defined basemaps directly with deck.gl.
BasemapLayer- NEWCompositeLayerthat loads a MapLibre / Mapbox style document and renders background, raster, vector, and label content using deck.gl sublayers.getBasemapLayers- Generate deck.gl sublayers from an already-resolved basemap style definition.getGlobeBaseLayers- Convenience helper for generating the globe-surface basemap layers.getGlobeTopLayers- Convenience helper for generating globe overlay layers such as atmosphere.- BasemapLayer MapView - Interactive flat-map control example with style switching and globe/flat runtime validation.
@deck.gl-community/basemap-layers/map-style
Utilities for loading and working with map styles available as a separate deck.gl independent sub-export.
MapStyleLoader- loaders.gl-compatible loader wrapper for resolving and validating style documents.BasemapSourceSchema,BasemapStyleLayerSchema,BasemapStyleSchema,ResolvedBasemapStyleSchema- Zod schemas for strongly typed style validation.parseProperties- Resolve style paint/layout properties for a given zoom level.filterFeatures- Apply Mapbox-style feature filters to decoded features.findFeaturesStyledByLayer- Inspect which features match a specific style layer.resolveBasemapStyle- Resolve style URLs, in-memory style objects, relative TileJSON references, and source URLs into a validated runtime style definition.
@deck.gl-community/layers
SkyboxLayer- NEW experimental layer for rendering a camera-centered cubemap background in deck.gl.- Supports
MapView,GlobeView,FirstPersonView, and other 3D-capable views. - Accepts either a cubemap manifest URL or an in-memory cubemap manifest.
- Includes cubemap normalization utilities for converting loaded cubemap faces into runtime texture data.
- Supports
Examples:
@deck.gl-community/three (NEW module)
New module for THREE.js integration experiments
TreeLayer- NEW layer for rendering 3D tree/forest datasets using Three.js instanced meshes.- 5 species / silhouettes: pine, oak, palm, birch, cherry.
- Organic canopy geometry with smooth low-frequency vertex jitter.
- Per-tree variety via position-derived random bearing and asymmetric XY scale.
- Season-driven canopy colours (spring / summer / autumn / winter).
- Pine tier density control (
getBranchLevels1–5) with per-tier drift. - Crop / fruit / flower visualisation (
getCrop) with live and dropped crop spheres. - Wild Forest example with 9 forest zones and interactive controls.
v9.2
Released: February 20, 2026
Highlights:
- deck.gl v9.2 compatibility
- Website: documentation improvements, search, and new gallery examples.
- Tests migrated from
jesttovitest. editable-layersnow uses turf.js 7 and official GeoJSON types.- New
@deck.gl-community/widgetsmodule with experimental deck.gl UI widgets. - New
@deck.gl-community/timeline-layersmodule for time-series visualization.
@deck.gl-community/widgets (NEW module)
A new module containing experimental widgets for deck.gl:
ZoomRangeWidget- NEW deck.glWidgetproviding a zoom slider.PanWidget- NEW deck.glWidgetproviding pan buttons for moving the viewport.
@deck.gl-community/timeline-layers (NEW module)
A new module providing time-series and timeline visualization layers (layers previously available in @deck.gl-community/infovis-layers):
HorizonGraphLayer- Compact time-series visualization using the horizon graph technique.MultiHorizonGraphLayer- Stack multiple horizon graphs with dividers.TimeAxisLayer- Dynamic tick-mark time axis for timeline views.VerticalGridLayer- Dynamic vertical grid lines that can sync with a time layer.
@deck.gl-community/editable-layers
DrawPolygonMode: AddedallowHolesconfiguration to enable drawing polygon holes within existing polygons.DrawPolygonMode: Enhanced hole creation with validation to prevent overlapping or nested holes.DrawPolygonMode: Added comprehensive edit types for hole operations (addHole,invalidHole).DeleteModeis now exported from the top-leveledit-modesentry point.- Fixed: rectangle corners can no longer be accidentally removed when
lockRectanglesis set. - Fixed: three-click polygon mode no longer misprocesses guide vertices.
Breaking Changes:
DrawPolygonMode:preventOverlappingLinesconfiguration renamed toallowSelfIntersection(with inverted logic).- Migration:
{preventOverlappingLines: false}→{allowSelfIntersection: true} - Migration:
{preventOverlappingLines: true}→{allowSelfIntersection: false}(or omit — this is now the default)
- Migration:
@deck.gl-community/leaflet
DeckLayerhas been renamed toDeckOverlayfor consistency with the deck.gl ecosystem.- Migration: replace all
DeckLayerimports and usages withDeckOverlay.
- Migration: replace all
@deck.gl-community/graph-layers
GraphLayerGraphLayerProps.data—GraphLayernow acceptsGraphEngine,Graph, or raw JSON via the newdataprop (including async URLs).
Graph Loaders:
- A common
GraphDataschema is defined and returned by all graph loaders. JSONGraphLoadernormalizes edge arrays or{nodes, edges}objects.DOTGraphLoader— load graphs from Graphviz DOT format, including remote URLs.ArrowGraph— load graphs from Arrow columnar format.
Graph Styling:
GraphLayerProps.stylesheet— unified stylesheet prop covering node, edge, and decorator styles.GraphStylesheet— NEW'arrow'edge decorator renders arrows on directional edges.GraphStylesheet— style constants can now be defined with simple string literals (e.g.'circle'instead ofNODE_TYPE.CIRCLE).
Graph Layouts:
-
D3DagLayout— NEWGraphLayoutfor DAGs (Directed Acyclic Graphs) with layering and collapse/expand support. -
RadialLayout— NEWGraphLayoutfor radial graph layouts. -
HivePlotLayout— NEWGraphLayoutfor hive plot graph layouts. -
D3MultiGraphLayout— NEWGraphLayoutfor multi-edge graph layouts. -
Graph events are now handled via callback props rather than
EventTarget. -
GraphViewerexample expanded to cover all new layouts with live UI controls for layout options. -
Significant updates and new content throughout.
v9.1
Released: July 8, 2025
Highlights
- deck.gl 9.1 compatility.
- Website fixes and example improvements.
@deck.gl-community/leaflet
- This module is published to npm.
- A working example is now up on the website.
@deck.gl-community/geo-layers (New module)
GlobalGridLayer- A new "generic" global grid layer that works against a pluggableGlobalGriddecoder.GlobalGrid- A small abstraction API for global grid decoders, making it easier to write visualizations / applications that can work with multiple global grids.A5Grid,H3Grid,S2Grid,GeohashGrid,QuadkeyGrid- Pre-defined global grid system "decoders" for some of the most popular global grids that can be used with theGlobalGridLayer
@deck.gl-community/timeline-layers (New module)
HorizonGraphLayer- New layer for compact time series.MultiHorizonGraphLayer- Stack multiple horizon graphs with dividers.TimeAxisLayer- Dynamic tick mark time axis for timeline views.VerticalGridLayer- Dynamic vertical grid lines that can sync with a time layer.
@deck.gl-community/infovis-layers (New module)
- Utilities for advanced deck.gl view management.
@deck.gl-community/graph-layers
- Code base has been partially modernized in an effort to simplify maintenance and contributions.
v9.0
Released: November 20, 2024.
Highlights
- Add deck.gl v9.0 support to selected modules
@deck.gl-community/editable-layers)
- This new layer pack is a fork of Uber's nebula.gl framework (which unfortunately no longer provides write access to maintainers).
- When drawing circles or ellipses properties of the created geometry are now stored in the vector's properties.
Pre v9.0 Updates
Released: December 22, 2023
@deck.gl-community/layers v0 - A new module intended to containing a collection of useful community layers. Initial layers are TileSourceLayer, DataDrivenTile3DLayer.
Released: April 14, 2023:
@deck-graph-layers - A new layer pack for rendering graphs (nodes and edges). Forked from Uber's archived graph.gl repo.