Skip to main content

Overview

Decide whether Nuxt PDF fits the document you need to create.

Nuxt PDF turns Vue components into PDFs on a Nuxt server. Put a typed Vue template in pdfs/, pass it data from a Nitro route, and return the completed PDF response.

Use Nuxt PDF when you control a structured, data-driven document:

  • invoices, quotes, and receipts;
  • reports and statements;
  • certificates, tickets, and labels.

The package provides PDF layout primitives, local images and fonts, SVG graphics, links, bookmarks, tables of contents, development previews, and test helpers. Templates run on Node and stay out of the browser bundle.

Pick the right rendering tool

Pick a different tool when:

  • You want to print an existing web page. Use headless Chromium through Playwright or Puppeteer. Nuxt PDF does not compile HTML or browser CSS.
  • You want to display an existing PDF. Use PDF.js. Nuxt PDF creates files; it is not a viewer.
  • You want to edit, merge, fill, or sign an existing PDF. Use pdf-lib or a signing service. Nuxt PDF creates new documents from application data.

Current scope

Nuxt PDF is in public beta. A minor release can contain a documented breaking change before version 1.0.

The current release does not include an HTML or CSS compiler, a table engine, a chart engine, form fields, signing, tagged PDF output, browser rendering, or edge rendering. It does not promise byte-identical output across machines.

The supported behavior page summarizes the tested boundary. The repository's CONFORMANCE.md contains the maintainer-grade evidence.