Browse docs
Browse docs
Released 2026-08-14
Adds the <Video> primitive. Only @dashforge/tw advances — the
tw-theme / tw-tokens pair stays on 1.2.0.
No breaking changes. Every existing consumer works unchanged — the
addition is purely additive on top of the 1.3.0 surface.
| Package | Change |
|---|---|
@dashforge/tw | 1.3.0 → 1.4.0. New <Video> primitive. |
@dashforge/tw-theme | unchanged — stays 1.2.0. |
@dashforge/tw-tokens | unchanged — stays 1.2.0. |
<Video>The moving-image twin of <Image> — a thin,
declarative wrapper over the native <video>, on the same anti-CLS +
loading + fallback machinery:
aspectRatio (or width + height) reserves the
box before load.poster shows before playback and is the
loading visual; without one a cache-aware <Skeleton> fills the reserved
box until the first frame is ready (no flash).fallback to customise).autoPlay / loop / muted / playsInline
/ preload and any other native <video> attribute are forwarded, and
<source> children are supported for multi-format delivery.fit (CSS object-fit) and rounded are Option C configurable via
theme.components.Video.defaults; sx / slotProps cover per-instance and
per-slot overrides. It also supports access (RBAC) and
visibleWhen gating, exactly like <Image>.
<Video src="/demo.mp4" poster="/demo.jpg" aspectRatio={16 / 9} rounded="lg" />
// Background-style loop (autoplay requires muted)
<Video src="/loop.webm" aspectRatio={1} autoPlay loop muted playsInline controls={false} />Full docs + live demos: Components → Video.
Drop-in for everything already using 1.3.0. The addition is opt-in;
nothing renamed, nothing removed. tw-theme / tw-tokens do not need to
move.
pnpm update @dashforge/tw| Peer | Required range |
|---|---|
react | ^18.0.0 || ^19.0.0 |
react-dom | ^18.0.0 || ^19.0.0 |
tailwindcss | ^3.4.0 |
@dashforge/tw-theme | ^1.2.0 |
@dashforge/tw-tokens | ^1.2.0 |
@dashforge/forms | ^1.0.0 |
@dashforge/ui-core | ^1.0.0 |
@dashforge/rbac | ^1.0.0 |
No new runtime dependencies.