Una citazione editoriale con rail verticale a 1px sulla sinistra, kicker mono opzionale con indice paddato, virgolette caporali « » e attribuzione su due token (autore · ruolo). Pensata per rompere la lunghezza di un articolo.
Note — Le caporali « » sono scelta italiana: per inglese sostituiscile con " " o virgolette curly. Il rail è un grid track da 1px così resta perfettamente allineato a qualsiasi lunghezza del testo.
Prompt LLM02
Incolla in Claude o ChatGPT per generare la tua variante. Include il contesto del brand, i token e i vincoli del progetto.
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 <PullQuote>: una citazione editoriale.
Props:
- children: ReactNode — il testo della citazione
- by?: string, role?: string — riga di attribuzione (es. "Steve Jobs · Stanford 2005")
- kicker?: string (default "Quote") — etichetta mono in alto
- index?: number — indice paddato a 02 mostrato dopo il kicker
- className?: string
Layout: <figure> con CSS grid grid-cols-[1px_1fr], colonna sinistra è un rail verticale 1px con bg-border. Header mono uppercase tracking-[0.1em] text-fg-soft con kicker · index. Quote in text-[18px] sm:text-[20px] font-medium leading-[1.45] text-balance, racchiusa fra « e » in text-fg-soft. Figcaption mono small con autore (font-medium text-fg) · ruolo (text-fg-muted).
Constraints: server component, balance del testo via text-balance, accessibile (figure/blockquote/figcaption corretti).
Output: file completo .tsx.
Uso tipico03
tsx
<PullQuote by="Steve Jobs" role="Stanford 2005" index={3}>
Il design non è solo come appare. Il design è come funziona.
</PullQuote>
Dipendenze04
npm
tailwind-merge
clsx
Interno
@/lib/utils#cn
Ti è servito? Dimmelo, oppure proponi il prossimo componente.