@openweather/maps-ui
The DOM renderer for the SDK's simple UI kit, built entirely on @openweather/maps-ui-core's view-models.
No React. Depends on @openweather/maps-core + @openweather/maps-ui-core only — MapLibre wiring lives in its
./maplibre subpath.
Controls (main barrel)
Each is a createX(options) => XHandle factory — see the matching page under Simple UI Kit for
full options/handle tables and a usage example:
| Export | Page |
|---|---|
createLegendBar |
Legend |
createLayerPanel |
Layer Panel |
createTimelineSlider |
Timeline Slider |
createSearchBox |
Search Box |
createOverlayToggles |
Overlay Toggles |
createPointQueryBox |
Point Query Box |
createZoomControl |
Shell & Zoom Control |
createShell, showWeatherMapError |
Shell & Zoom Control |
./maplibre subpath
createSimpleMapUI(options) — assembles the shell + every control above + location pins + point
query around an already-created WeatherMapHandle. See
Getting Started and the
Vanilla guide.
import { createSimpleMapUI } from '@openweather/maps-ui/maplibre';
Styles
@openweather/maps-ui's styles.css re-exports @openweather/maps-ui-core's tokens.css + simple.css — import
it once for every control above to render correctly out of the box.
Design note: .owm-root
Every control's root element carries the owm-root class — the scope tokens.css defines its
--owm-* custom properties under. This means a control mounted anywhere (not necessarily inside a
parent that already has the class) renders correctly without the caller having to remember to wrap
it.
What moved out
The fuller designed UI this package used to ship — a fan-out layer rail, a day-axis timeline with a
speed menu, a One Call weather detail panel, collapsible search, and per-overlay config panels —
was removed from the SDK and now lives in a separate weather-maps website repo, OpenWeather's own
production site, built on the same headless @openweather/maps-ui-core view-models this package still
exports from ..