PaperQuire Docs Download

GitHub Action

The PaperQuire Render Action lets you generate branded, print-ready PDFs directly in your GitHub Actions workflows. Every push to your docs folder can automatically produce up-to-date PDFs — no manual export needed.

Quick Start

Add this step to any workflow:

- uses: paperquire/render-action@v1
  with:
    files: 'docs/*.md'
    template: minimal-clean
    output: build/pdfs

- uses: actions/upload-artifact@v4
  with:
    name: pdfs
    path: build/pdfs/

That's it. Every Markdown file matching the glob pattern is rendered to PDF using PaperQuire's built-in Chromium renderer — the same engine that powers the desktop app.

Inputs

InputRequiredDefaultDescription
filesYesGlob pattern for Markdown files (e.g. docs/*.md, **/*.md)
templateNominimal-cleanPaperQuire template ID
outputNooutput/Output directory for generated PDFs

Outputs

OutputDescription
pdf-filesNewline-separated list of generated PDF file paths

Examples

Render docs on push

Generate PDFs whenever documentation files change and upload them as build artifacts:

name: Generate PDFs

on:
  push:
    paths:
      - 'docs/**/*.md'

jobs:
  render:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4

      - uses: paperquire/render-action@v1
        id: render
        with:
          files: 'docs/*.md'
          output: build/pdfs

      - uses: actions/upload-artifact@v4
        with:
          name: pdfs
          path: build/pdfs/

Use a specific template

- uses: paperquire/render-action@v1
  with:
    files: 'reports/**/*.md'
    template: executive-report
    output: reports/pdf

Use rendered PDFs in subsequent steps

The action outputs the list of generated files so you can reference them downstream:

- uses: paperquire/render-action@v1
  id: render
  with:
    files: 'docs/*.md'

- name: List generated PDFs
  run: echo "${{ steps.render.outputs.pdf-files }}"

Attach PDFs to a GitHub release

name: Release PDFs

on:
  release:
    types: [published]

jobs:
  pdf:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4

      - uses: paperquire/render-action@v1
        with:
          files: 'docs/*.md'
          template: executive-report
          output: dist/

      - name: Upload to release
        env:
          GH_TOKEN: ${{ github.token }}
        run: gh release upload ${{ github.event.release.tag_name }} dist/*.pdf

How It Works

  1. The action runs in a Docker container with Node.js and all Chromium dependencies pre-installed.
  2. It globs your Markdown files using the files input pattern.
  3. Each file is rendered to PDF using paperquire render — the same headless Chromium engine as the desktop app.
  4. Generated PDFs are placed in the output directory and their paths are set as the pdf-files output.

No Pandoc, LaTeX, or WeasyPrint required. The action uses PaperQuire's built-in renderer, so your PDFs look identical to what the desktop app produces.

Templates

All built-in PaperQuire templates are available:

See Templates for the full list and previews.

Source

The action source is on GitHub: paperquire/render-action