PDF blocks
Complete, ready-to-use PDF documents built with @ui-registries/pdf and its UI components.
Blocks are full documents — not single components. Each block renders a complete <Document> from typed data, so you can pass it straight to PDFViewer or renderToBuffer.

InvoiceMulti-page invoice with line items, taxes, totals and localized amounts.

QuoteQuote / estimate with project intro, line items, discount, taxes, terms and a signature block.

ReceiptCompact A5 payment receipt with an amount-paid highlight, payment method, items and taxes.

ReportMonthly business report with a cover header, KPI cards, bar and line charts, a breakdown table and highlights.

ResumeTwo-column CV with experience, education, skills, languages and projects that flows cleanly across pages.

CertificateLandscape certificate of completion with a decorative frame, signatures, credential ID and a themed seal.
Installation
Like UI components, blocks are installed with the shadcn CLI: the source is copied into components/pdf/ along with the components it uses, and you own the code.
Terminal
npx shadcn add https://ui-registry.com/r/pdf/invoice.jsonConventions
Every block follows the same rules:
- Typed data in, document out: content comes from a
dataprop, nothing is hard-coded. - Themeable: only semantic colors are used; pass a
themeprop to match your brand. - Translatable: visible labels can be overridden with a
labelsprop. - Multi-page safe: headers and footers repeat, rows and summary sections never split across pages.