Skip to main content

Overview

@deck.gl-community/panels provides a modest set of composable UI components intended for small data visualization applications.

  • Composable: built on PanelComponent, Panel, and panel containers.
  • Framework-independent: owns Preact-rendered UI without requiring a React application.
  • deck.gl integration: can be used with deck.gl's widget system, through PanelWidget adapters from @deck.gl-community/widgets.

Use this package when you want reusable panel composition, standalone mounting through PanelManager, standalone panel theming, and application-managed UI state such as toast notifications.

Panels

Panels are titled content definitions. Leaf panels render one unit of content; composite panels arrange other panels; panel containers mount one panel inside box, modal, sidebar, or full-screen chrome.

Components

Components are panel-owned mountable UI that are not necessarily panels. PanelComponent is the root lifecycle class; Panel, panel containers, toolbars, toast stacks, and app-specific panel-managed controls extend it.

Managers

Managers keep application behavior and state outside rendering. Descriptor-backed managers can share the same definitions with panels so settings, shortcut help, and URL docs stay synchronized with the app.

Start with Using Panels for panel composition, Using Components for non-panel PanelComponent instances, and Using Managers when application descriptors should also drive panel help or settings UI.

caution

The deck.gl-community repository is semi-maintained. One of its goals is to collect and preserve valuable deck.gl ecosystem related code that does not have a dedicated home. Some modules may no longer have dedicated maintainers. This means that there is sometimes no one who can respond quickly to issues.