Registry Item Template
interlace-ui/registry-item-templateFreeBlock
Full-page surface for a single registry item's documentation (`/c/[name]` on ds.interlace.tools). Composes the header (item name + description + install snippet), the anatomy diagram, the variants matrix, related-components grid, and a CTA back to the…
Install it
npx shadcn@latest add https://ds.interlace.tools/r/registry-item-template.jsonSource
1import * as React from 'react';23// @interlace/registry-item-template v1.1.0 — Interlace design system.4// Docs, props and live preview: https://ds.interlace.tools/c/registry-item-template5// What changed since: https://ds.interlace.tools/c/registry-item-template#history6// Generated banner — keep it, the upgrade diff reads this version.78/**9 * @interlace/ui — RegistryItemTemplate10 *11 * Full-page surface for a single registry item's documentation12 * (`/c/[name]` on ds.interlace.tools). Composes the header (item name +13 * description + install snippet), the anatomy diagram, the variants14 * matrix, related-components grid, and a CTA back to the registry —15 * each in its own `<SectionBoundary>` so the page streams16 * section-by-section.17 *18 * The DS eats its own dog food here: the registry app's `/c/[name]/page.tsx`19 * uses this template instead of hand-rolling the layout per-item.20 *21 * ## Anatomy22 *23 * <article data-slot="registry-item-template" data-min-viewport="320">24 * <Container size="content">25 * <SectionBoundary name="registry-item-header">26 * Header: name + description + install command27 * </SectionBoundary>28 * <SectionBoundary name="registry-item-anatomy">29 * Anatomy / API surface30 * </SectionBoundary>31 * <SectionBoundary name="registry-item-variants">32 * Variant matrix (CVA-driven)33 * </SectionBoundary>34 * <SectionBoundary name="registry-item-related">35 * Related components36 * </SectionBoundary>37 * </Container>38 * </article>39 *40 * ## MIN_VIEWPORT — 32041 *42 * Container.content collapses to full width below 1024; the template43 * layout is fluid down to 320 CSS-px.44 *45 * | Rule | Concept | Where in this file |46 * | ---- | -------------------------------- | ----------------------------------------------------------- |47 * | R4 | Extends native el | `React.ComponentProps<'article'>` + template props |48 * | R6 | data-slot on root | `data-slot="registry-item-template"` |49 * | R7 | className merged + ...rest | `cn(className)` + `{...props}` on <article> |50 * | R10 | Composition seam (slots) | `header` / `anatomy` / `variants` / `related` ReactNode props |51 * | R14 | Declares min viewport | `data-min-viewport={String(MIN_VIEWPORT)}` |52// … truncated
More from interlace-ui
All 140 items| Component | Registry | Kind | Access | Installs | Command |
|---|---|---|---|---|---|
| Article Templatearticle-template | interlace-ui | Blocks | Free | no deps | |
| Auth Templateauth-template | interlace-ui | Blocks | Free | no deps | |
| Author Templateauthor-template | interlace-ui | Blocks | Free | no deps | |
| Blog Home Templateblog-home-template | interlace-ui | Blocks | Free | no deps | |
| Dashboard Templatedashboard-template | interlace-ui | Blocks | Free | no deps | |
| Docs Page Templatedocs-page-template | interlace-ui | Blocks | Free | no deps | |
| Error Templateerror-template | interlace-ui | Blocks | Free | no deps | |
| Landing Templatelanding-template | interlace-ui | Blocks | Free | no deps |
