Problem
Printed CVs lose all the clickability of digital PDFs. A reader looking at a paper copy has to manually type a URL. QR codes solve this — a phone camera takes them straight to the homepage.
Proposed solution
preferences.qrCode: "url" | <url string> | none (default none). When "url", use basics.url; when a string, use that URL directly. Render as a small (~3em) QR matrix in the header, on the opposite side from the portrait.
Typst has no built-in QR primitive, so this needs either:
- A vendored pure-Typst QR generator (preferred; keeps the package self-contained).
- An optional external dependency
@preview/qr:x.y.z that callers can declare.
Alternatives considered
- Document a recipe using a third-party Typst QR package — works but adds a dependency users have to know about.
Problem
Printed CVs lose all the clickability of digital PDFs. A reader looking at a paper copy has to manually type a URL. QR codes solve this — a phone camera takes them straight to the homepage.
Proposed solution
preferences.qrCode: "url" | <url string> | none(defaultnone). When"url", usebasics.url; when a string, use that URL directly. Render as a small (~3em) QR matrix in the header, on the opposite side from the portrait.Typst has no built-in QR primitive, so this needs either:
@preview/qr:x.y.zthat callers can declare.Alternatives considered