Parts · the section catalogue

Compose pages from swappable Parts

A Part is a prop-driven page section — a hero, a bento grid, a marquee, a pricing table. You compose them in the Visual Builder, in any order. Every Part is a cw-* atom, so it adopts the active design / Voice palette: drop the same Part onto any palette-adaptive skin and it wears that skin's colours. The third piece of the mixer — Skin × Voice × Parts.

26 parts · 7 new

The catalogue

Filter by category. Each preview is a schematic — the accent block is your palette's colour, the way the real Part renders. Add any Part in the Visual Builder (Rediger side → add section).

Hero

Heroes

The classic centred hero — eyebrow, headline with an accent span, tagline, and primary + secondary CTAs.

hero

3D hero (Live Canvas)

New3DHeroes

A hero with a palette-reactive three.js scene flowing behind it. Pick any of the Live Canvas scenes; it adopts your brand colours and is WebGL2 / reduced-motion / saveData-gated out of the box.

heroAurora

Split hero

Heroes

Two-column hero — copy and CTA on one side, an image on the other. Reversible.

splitHero

Media hero

Heroes

Full-bleed background image with overlaid headline, tagline and CTA. Cinematic.

mediaHero

Bento grid

NewContent

A premium asymmetric tile grid — a featured 2×2 tile anchors the layout, supporting tiles fall into place. The accent follows your palette.

bento

Feature grid

Content

A responsive 3-column grid of features with an etched hairline-grid look. Scales to 6–30.

featureGrid

Feature split

Content

Text + checklist on one side, an image on the other. For explaining one capability in depth.

featureSplit

Value props

Content

Icon-led value cards — the "why us" grid. Re-tones with your Voice (genome) copy.

valueProps

How it works

Content

Numbered steps that walk a visitor from intent to outcome. 2–5 steps.

howItWorks

Stat band

Content

A band of 1–4 big numbers over small labels. Proof at a glance.

statBand

Stack grid

Content

A tidy grid of short labels — materials, tooling, what you work with.

stackGrid

Gallery grid

Content

An image grid with optional captions. For lookbooks, work, and product shots.

galleryGrid

Rich text

Content

A clean prose block for long-form copy, policies, or an about section.

richText

Marquee

NewSocial proof

A CSS-only infinite scroller for short phrases or "logos as text". Reduced-motion-aware and pauses on hover.

marquee

Testimonials

Social proof

Customer quotes with author + role. Pairs with Review JSON-LD on the storefront.

testimonials

Pull quote

Social proof

A single oversized quote with attribution. A moment of focus between sections.

quote

Logo cloud

Social proof

A row of partner / press / customer logos. Quiet, credible social proof.

logoCloud

Pricing table

Conversion

Side-by-side plans with features and a highlighted recommended tier.

pricingTable

FAQ

Conversion

An accordion of questions and answers. Ships FAQPage JSON-LD on the storefront.

faq

Banner CTA

Conversion

A bold full-width call-to-action band on your accent colour.

bannerCta

Newsletter

Conversion

An email-capture block with a single field and a clear promise.

newsletterBlock

CTA footer

Conversion

The closing call-to-action that ends a page — headline, line, and a primary button.

ctaFooter

Configurator (build-your-own)

⭐ ProConversion

An interactive "build your own" product configurator: pick a finish / size / extras and the preview recolours + the price updates live. The killer commerce primitive — a $100k-feeling configurator on any page.

configurator

Scroll-cinema

⭐ ProContent

Scroll-driven cinematic storytelling: full-viewport "beats" whose copy fades and glides in as you scroll, Apple-product-page style — native CSS scroll-driven animation, no JavaScript, with a content-visible fallback.

scrollStory

3D product showroom

⭐ Pro3DContent

A premium product showroom on the Live Canvas: a palette-reactive 3D centrepiece framed with the product name, spec rail and CTA — the "see it in 3D" moment. WebGL2 / reduced-motion gated, three.js lazy-loaded.

showroom3d

Before/after slider

⭐ ProContent

Drag the handle (or arrow-keys) to wipe between two states — before/after, plain/premium, with/without. Works with two images or pure-CSS gradient panels. Accessible and touch-friendly.

compare

How it works

One registry, palette-adaptive by construction

Each Part is a small typed component with a Zod prop-schema and defaults, registered once in the engine's section registry. The Visual Builder renders Parts from a page's layout through that single registry, so the storefront and the live preview can never diverge. Because Parts use the shared cw-* tokens, the same Part renders in every shop's palette — and re-tones with your Voice (genome) copy where it reads it.