Skip to content
LSD Framework
Component · primitive

Bento Grid

Asymmetric layout as a named map. Each cell claims a slot in grid-template-areas, declares its tier, and trusts the grid for shape. Cells stagger in on view; below 700px the map folds gracefully to a stack.

data-cells · data-area · data-tier IO stagger · container-aware reflow ↩ All components
01 · 6-cell DNA · hero + stat rowdata-cells="6"
Featured

A design substrate, not another builder.

Tokens, surfaces, containers, behaviours — all readable by humans and agents alike. Composition is the entire product.

Throughput
12.4k
tokens emitted / hour
Last 8 days +38% surfaces shipped
Aurora

Timeline composer

Get started

From palette to package in one sitting.

Pick a constellation. Wire a behaviour. Export an .lsd. Hand it to your stack.

02 · 9-cell DNA · banner + two utility rowsdata-cells="9"
Surface tiers

Every cell knows its weight.

Set data-tier="elevated" for a quiet lift, "high" for a directional accent wash. The colour thinking is done by the substrate.

Token snap

Drag rounds to the scale.

Resizes lock to the next size step — never a rogue pixel.

Container queries

Reflow by context.

A cell asks the parent its width, not the viewport.

Cascade

One wire, many children.

Fan-out actions with origin modes — first, center, edges, random.

Behaviours

Triggers → actions → targets.

A visual JS designer for the parts that resist tokens.

Style queries

Read a parent's surface, paint accordingly.

Components stay layout-only; colour flows from context.

Aurora

Timeline-based motion.

Layers, ruler, draggable keyframes — Flash DNA for the modern web.

03 · 12-cell DNA · editorial mosaicdata-cells="12"
Cover · 2 × 2

The cosmos is the design system.

Galaxies set palette, nebulas tune contrast, constellations decide hierarchy. Cells inherit the conversation.

Active
328
tokens in scope
Snippet
// surface-aware
.card {
  background: var(--bg-elev);
  color: var(--ink);
  border: 1px solid var(--line);
}
// reads tier from parent
@container style(--tier: high) {
  .card { background: var(--bg-accent); }
}
Velocity

+38%

Shipped surfaces vs last cycle.

Atlas

Constellation map

A live view of every token in flight.

Pulse
Team
ABC+3

six contributors this cycle.

UsageAPI surface

Authoring contract

A bento grid is a host (data-cells) with .lsd-bento__cell children declaring data-area. The grid's grid-template-areas map decides placement; cells never carry layout coordinates of their own. Container queries collapse the map at 700px and again at 440px.

HookValuesEffect
data-cells6 · 9 · 12Picks a layout DNA. Add your own by extending the CSS map.
data-areaarea-nameSlots the cell into the named region.
data-tierelevated · highSurface-tier styling — quiet lift or directional accent.
--iintegerStagger index. Author it inline; the keyframe multiplies by 60ms.
--bento-radiuslengthPer-host corner rounding.
--bento-padlengthPer-cell internal padding.
.is-revealed on hostIO toggles this; CSS plays the staggered entrance.
prefers-reduced-motionStagger and hover-lift drop. Layout, content, tier all remain.
View bento HTML
<div class="lsd-bento" data-cells="6">
  <article class="lsd-bento__cell" data-area="hero" data-tier="high" style="--i: 0;"> … </article>
  <article class="lsd-bento__cell" data-area="stat"  data-tier="elevated" style="--i: 1;"> … </article>
  <article class="lsd-bento__cell" data-area="chart" data-tier="elevated" style="--i: 2;"> … </article>
  <article class="lsd-bento__cell" data-area="media"                       style="--i: 3;"> … </article>
  <article class="lsd-bento__cell" data-area="cta"   data-tier="elevated" style="--i: 4;"> … </article>
</div>
LSD components · Bento Grid · primitive
↩ All components