Live react-pdf output1 page
What's inside

PDFx components used

AlertCardColumnsDividerHeadingKey ValuePage FooterPage HeaderQR CodeStackText
Use it in React

How to generate event badge and ticket PDFs in React

Badges and tickets are batch jobs. Map registration rows into props, encode the ticket token in the QR component, and render hundreds of PDFs without a browser farm.

  1. Preview the live @react-pdf/renderer output on this page (no signup).
  2. Click Use this template to open it in the visual builder and bind your {{variables}}.
  3. Export the .zip of typed TSX, drop it into your Next.js app, and call renderToBuffer with your data.

Drop the exported folder into your app/ directory, import the template, and pass typed props. Render it server-side with renderToBuffer in a route handler, or stream it to the browser. No headless browser, no runtime to learn.

Related: How to generate PDFs in React in 2026

What you get on export

A folder you own

event-ticket/
├─Template.tsx
├─types.ts
├─sample-data.ts
└─README.md
import { Template } from "./event-ticket";
import { renderToBuffer } from "@react-pdf/renderer";

const pdf = await renderToBuffer(
  <Template data={data} />
);
More in Event
FAQ

Questions about this event ticket template

Is the preview the real PDF?

Yes. The sheet renders through @react-pdf/renderer, the exact engine behind the export and the hosted API. What you preview is what ships.

Do I own the exported code?

Yes. Export is a .zip of typed TSX, sample data, and a README. There is no proprietary runtime and no vendor lock-in. You render PDFs inside your own React or Next.js app.

How do QR codes get their payload?

Pass a URL or ticket token as a prop. The QR component encodes that string at render time in react-pdf.