Luca Perullo
Components

Component

LiveNew

Preview Frame

La cornice usata per gli esempi di questa libreria: header con label + aside mono, area centrale flexbox per renderizzare qualsiasi componente, e tre backdrop (flat / dotted-grid / 45° hatch).

LayoutPreviewServer
Open in ClaudeSorgente

Esempio01

preview-frame.tsx
Anteprimagrid

Qui dentro renderizzi qualsiasi componente.

Note Tre varianti di backdrop: default (bg-bg-alt piatto), grid (dotted radial-gradient via @utility grid-dots), hatch (45° via stripe-rule). bare nasconde il toolbar per inserimenti compatti.

Prompt LLM02

Incolla in Claude o ChatGPT per generare la tua variante. Include il contesto del brand, i token e i vincoli del progetto.

Prompt · preview-frame
Open in Claude
Sei un senior frontend engineer. Stai lavorando su un sito Next.js 16 + React 19 + Tailwind v4 in italiano, look chanhdai-inspired: colonna stretta 672px, Geist Sans + Geist Mono, hairline 1px, divisori a stripe diagonale, palette zinc.

Token CSS disponibili: --bg, --bg-alt, --fg, --fg-muted, --fg-soft, --border, --border-strong, --accent. Usa SEMPRE queste variabili tramite le utility tailwind generate (bg-bg, text-fg-muted, border-border, ecc.). Helper "cn" da "@/lib/utils". Niente librerie UI extra: solo lucide-react e tailwind-merge.

Genera un componente <PreviewFrame>: cornice per anteprime live.
Props:
- children: ReactNode
- label?: string (default "Anteprima")
- aside?: string (default "live · server") — caption mono a destra
- grid?: boolean — pattern dotted-grid (utility grid-dots)
- hatch?: boolean — pattern 45° (utility stripe-rule)
- minHeight?: number (default 160)
- bare?: boolean — nasconde il toolbar
- className?: string

Layout: container rounded-[9px] border bg-bg. Toolbar: bg-bg-alt, label mono uppercase, aside mono soft. Body: flex items-center justify-center px-5 py-8 sm:px-8, contenitore interno max-w-[480px], minHeight applicato via style.

Constraints: server component, grid e hatch mutuamente esclusivi (grid vince).

Output: file completo .tsx.

Uso tipico03

tsx
<PreviewFrame label="Anteprima" grid>
  <MyComponent />
</PreviewFrame>

Dipendenze04

npm
  • tailwind-merge
  • clsx
Interno
  • @/lib/utils#cn
  • globals.css#grid-dots
  • globals.css#stripe-rule

Ti è servito? Dimmelo, oppure proponi il prossimo componente.