The system behind carbn.sh.
Every token, every primitive, every motion curve that shipped the surface. Use this page as the source of truth when extending any carbn-branded artefact.
Surface, type, space.
Three systems carry the load: a monochromatic void palette, a single type family in two voices, and a strict 4-pixel spacing grid. Everything else composes from these.
Logo
clearspace: 50% of mark height on all sides
Colors · the void theme
15 tokens · no accent hue
Typography · Inter + JetBrains Mono
Display + Variable + Mono · three families, one voice
Spacing · 4-unit baseline
All spacing is a multiple of 4
Radius
4 tokens · increments of 4
Grid
12 / 8 / 4 columns · 24 / 20 / 16 gutter
<div className="mx-auto max-w-[1280px] px-5 sm:px-8">
<div className="grid grid-cols-4 gap-4 md:grid-cols-8 md:gap-5 lg:grid-cols-12 lg:gap-6">
{/* 12-col layout on lg, 8-col on md, 4-col on default */}
</div>
</div>Composable primitives.
Buttons, pills, tiles, chips — the atomic interaction surface. Every element here carries the glass treatment and inherits the typographic scale.
Buttons
height 36 / 40 / 44 · radius 10
// Primary
<a className="inline-flex h-11 items-center gap-2 rounded-[10px]
border border-[var(--color-line-3)] bg-[var(--color-glass-4)]
px-5 text-[14px] font-medium text-[var(--color-fg)]
transition-colors hover:bg-[rgba(255,255,255,0.12)]
carbn-glass-hi">
Open the Playground <ArrowRight />
</a>Pills · announcements
height 28 · 32 · radius-full
Keyboard tiles
h-[22] min-w-[22] · mono-sm
Cards
radius-lg · carbn-glass / carbn-glass-hi
Standard card surface. 1px inset highlight on the top edge.
Emphasized card. Inset highlight + halo + soft drop shadow.
Cursor-follow radial gradient + parallax tilt. Used on bento + pricing.
Badges
inline status + tag chips
Focus ring
2px · signal-focus · 2px offset · WCAG 2.2 AA
Spring physics, not duration curves.
One easing curve, three motion classes, one noise grain. Every interaction respects prefers-reduced-motion and disables translation while preserving opacity.
Easing
[0.16, 1, 0.3, 1] · expo-out
// Standard ease
transition: { duration: 0.55, ease: [0.16, 1, 0.3, 1] }
// Spring (hover tilt, drag)
useSpring(value, { stiffness: 180, damping: 20 })
// Scroll-linked
useScroll({ target, offset: ["start start", "end end"] })Three motion classes cover everything: a single ease curve for opacity & translation, a spring for cursor-following physics, and scroll-linked transforms bound directly to scrollYProgress.
Fade up
y: 14 → 0 · 550ms
Content starts at y: 14, opacity: 1 and lifts to its final position. Opacity holds at 1 so SSR snapshots render.
Spotlight + tilt
520px radial · ±3° rotation · spring 180/20
Pulse
2s ease-in-out · signal-live
A 2-second opacity + scale pulse applied to live indicators. Pair with a halo-blur layer at 24% opacity for the full effect.
Scan line
hero canvas extraction sweep
Typed command
65ms per glyph · blinking caret
Marquee
60s infinite linear · pause on hover
Noise grain
fixed · 2.8% · mix-blend overlay
Monochromatic marks, inherited colour.
All icons and brand marks render in currentColor so they inherit text tokens. One visual register across UI icons, brand logos, and status glyphs.
UI icons
16px · 1.5 stroke · rounded linecap
Brand logos · ecosystem marquee
16 marks · rendered via currentColor
The composite anatomies.
Every section on the marketing surface assembles from the same primitives. Here are the six canonical compositions with their structural callouts.
Hero · capture to code
100vh minus nav · centered composition
Inspect the architecture.
A headless traversal engine for the open web.
- 01Announcement pill
Live dot + token split. Always clickable, opens docs anchor.
- 02Display headline
Two lines. display-xl. Per-line fade-up with 80ms stagger.
- 03Subhead
body-lg · max-width 520 · fg-2.
- 04CTA cluster
Primary button + secondary with kbd hint. 12px gap.
- 05Hero canvas
Looped extraction choreography. 9s cadence with 2s pause.
Bento card · capability tile
copy column + visual column · spotlight + tilt
Headless Traversal Engine
Crawl, classify, resolve. Deterministic selectors.
- 01Eyebrow
mono-sm · format '## · LABEL'. Always uppercase with 0.14em tracking.
- 02Title
heading-md. Single line preferred.
- 03Body
body-md · fg-2 · max-width 380 · single sentence.
- 04Visual region
Card-local animation. Always bounded by overflow-hidden and rounded-lg.
Workflow · sticky scroll
200–280vh scroll parent · sticky viewport 520
Map every element
A hybrid renderer resolves the layout.
- 01Phase eyebrow
Mono eyebrow + hair rule + counter. Crossfades with 4px blur.
- 02Active title
display-md. Only the active phase renders at full opacity.
- 03Body copy
body-md. max-width 460. Fades with the title.
- 04Progress rail
Horizontal 1px track that fills left-to-right with scrollYProgress.
- 05Phase dots
4 buttons, clickable. Active dot glows and scales to 110%.
- 06Canvas
520px tall. Four states crossfade. Phase 2 is scroll-linked.
Testimonial card · drag carousel
420×240 · cursor-grab · snap on release
The traversal output matched our component tree, not a screenshot.
- 01Handle + role
mono-sm · fg-3 · format '@handle · role · company'
- 02Quote glyph
Decorative, tr corner. Inherits fg-4.
- 03Quote body
body-lg · fg · max 3 lines. Stays above 85-char width.
- 04Attribution
Avatar initials + name + company. body-sm.
Pricing tier · three-column composition
320 wide · radius-lg · emphasized tier = line-3
Technical teams
- Unlimited extractions
- Private library
- Shared namespace
- Priority engine queue
- 01Tier name
Eyebrow (mono-sm uppercase) + audience description.
- 02Price
display-lg · suffix in body-sm fg-3.
- 03Entitlements
Vertical list · tick glyph · 8 rows max.
- 04Emphasis ribbon
Floats above the middle tier · radius-sm · mono-sm uppercase.
- 05CTA
Full-width button, h-11. Emphasis tier uses fg-solid fill.
Final CTA · ghost wordmark closer
720 tall · cropped wordmark + centered invocation
Extract your first component.
- 01Ghost wordmark
Cropped at top. Opacity 0.14. Soft mask on bottom edge.
- 02Eyebrow pill
'Production-ready. Today.' · h-7 · line-2 border.
- 03Heading
heading-lg. Single declarative sentence.
- 04Command block
60px tall · mono-md · inline copy button. Clipboard feedback 1.4s.
- 05Secondary link
Ghost link. Dotted underline offset 6px.
Authoritative. Technical. Precise.
Claims are assertions, not suggestions. The reader is a practitioner; jargon is welcomed where it narrows meaning. Every sentence carries a specific commitment.
Banned vocabulary
never ship · not in copy, docs, or UI
- Easy
Implies condescension. The audience is expert.
- Simple
Same as Easy. Says nothing specific.
- Clone
Misrepresents the product; risks legal misreading.
- Hack
Undermines production-ready positioning.
- Magic
Opacity is the opposite of the product's thesis.
- Seamless
Has become a null word through overuse.
- Powerful
Asserts without evidence.
Preferred vocabulary
favour these · narrow meaning wins
Copy pairs
same surface · different intent
The easy way to magically clone beautiful websites with powerful AI in seconds.
A headless traversal engine for the open web. carbn.sh maps, componentizes, and ships production-ready blocks to your codebase — or your agent.
Seamlessly and simply capture any website with one click.
Deterministic traversal. One command resolves a URL into a typed primitive tree.
Get started easily
Open the Playground
Powerful AI analysis
Inspect · analyze
Sentence economy
fewer words · narrower meaning