Define your brand with design tokens, cover styles, and CSS overrides. Every PDF you export uses a consistent, professional look — no manual formatting.
Eight professionally designed templates ship with PaperQuire. Duplicate any of them to create your own.
Centered cover, serif headings, small-caps H2
Band cover, clean sans-serif, blue accent
Minimal cover, monospace H3, indigo accent
Sidebar cover, uppercase headings, teal accent
Band cover, warm orange accent, task-friendly
No cover, no decoration, pure content focus
Sidebar cover, Georgia headings, A4 page size
Sidebar cover, thick H1 underline, bold tables
A template is a folder with two files. Design tokens set your colors and fonts; CSS overrides handle structural tweaks.
Design tokens (colors, fonts, sizes), cover page style, page layout, and document defaults.
Optional CSS overrides scoped under .tpl-<id>. Structural tweaks that tokens alone can't express.
PaperQuire applies tokens as CSS variables, then your theme.css, then any per-export overrides.
~/Library/Application Support/paperquire/templates/~/.config/paperquire/templates/%APPDATA%\paperquire\templates\Two ways to create a custom template. No build tools needed.
The fastest way. Open Document Setup, select a template, and click Duplicate. PaperQuire copies the template to your user folder and opens it in Finder/Explorer.
template.json and theme.css in any text editor
Drop a folder with template.json and theme.css into your templates directory.
templates/
my-brand/
template.json
theme.css
Only id and name are required. Everything else has sensible defaults.
{
"id": "my-brand",
"name": "My Brand",
"description": "Company style guide template",
"bestFor": "Internal reports and proposals",
"tokens": {
"accent": "#005A8E",
"accentDark": "#003F63",
"bodyFont": "Arial, sans-serif",
"headingFont": "Arial, sans-serif",
"tableHeadBg": "#005A8E"
},
"cover": { "enabled": true, "style": "sidebar" },
"page": {
"size": "Letter",
"margins": { "top": 0.75, "right": 0.8, "bottom": 0.75, "left": 0.8 }
},
"toc": { "enabledByDefault": true },
"footer": { "showPageNumbers": true, "showTitle": true },
"h1NewPage": true
}
/* Scope all rules under .tpl-my-brand */
.tpl-my-brand h1 {
border-bottom-width: 3px;
}
.tpl-my-brand h2 {
border-left-width: 5px;
}
Reopen Document Setup to pick up changes — no app restart required.
Full template.json schema. Omitted fields are filled with defaults.
| Field | Type | Required | Description |
|---|---|---|---|
id | string | Yes | Unique identifier. Must match the folder name. Alphanumeric, hyphens, and underscores only. |
name | string | Yes | Display name shown in the template picker. |
description | string | No | Subtitle shown under the template name. Default: "Custom template". |
bestFor | string | No | One-line use-case label. Default: "Custom". |
| Field | Type | Default | Description |
|---|---|---|---|
cover.enabled | boolean | false | Whether the cover page is on by default. Users can override per-export. |
cover.style | string | "none" | Cover layout: "band", "centered", "minimal", "sidebar", or "none". |
| Field | Type | Default | Description |
|---|---|---|---|
page.size | string | "Letter" | "Letter" (8.5 × 11 in) or "A4" (8.27 × 11.69 in). |
page.margins.top | number | 0.75 | Top margin in inches. |
page.margins.right | number | 0.75 | Right margin in inches. |
page.margins.bottom | number | 0.75 | Bottom margin in inches. |
page.margins.left | number | 0.75 | Left margin in inches. |
| Field | Type | Default | Description |
|---|---|---|---|
toc.enabledByDefault | boolean | false | Include a table of contents page. Users can override per-export. |
footer.showPageNumbers | boolean | true | Show page numbers (N / total) in the bottom-right. |
footer.showTitle | boolean | false | Show the document title in the bottom-left footer. |
h1NewPage | boolean | false | Start each H1 heading on a new page (except the first). |
Tokens in template.json become CSS custom properties. Use them in theme.css or let the base stylesheet apply them automatically.
| Token | CSS variable | Default | Used for |
|---|---|---|---|
accent | --doc-accent | #2563eb | Headings, cover bar, blockquotes, TOC rules, table headers |
accentDark | --doc-accent-dark | #1e3a8a | H4 color, links, cover company text |
ink | --doc-ink | #1a1d22 | Body text color |
secondary | --doc-secondary | #4b5159 | H4, TOC H3, cover subtitle, figure captions |
muted | --doc-muted | #6b7280 | Cover meta (author/date), footer text |
rule | --doc-rule | #e3e6ea | Table borders, <hr>, callout borders |
panel | --doc-panel | #f6f7f9 | Blockquote background, zebra-stripe rows |
codeBg | --doc-code-bg | #f6f8fa | Code block and inline code background |
bodyFont | --doc-font | Arial, sans-serif | Body text font family |
headingFont | --doc-heading-font | same as body | All headings and cover title |
monoFont | --doc-mono | Menlo, Consolas, monospace | Code blocks and inline code |
baseFontSize | --doc-base-size | 11pt | Body text font size |
h1Size | --doc-h1-size | 21pt | H1 heading font size |
h2Size | --doc-h2-size | 15.5pt | H2 heading font size |
lineHeight | --doc-line-height | 1.6 | Body text line height (unitless) |
tableHeadBg | --doc-table-head-bg | #2563eb | Table header row background |
tableHeadColor | --doc-table-head-color | #ffffff | Table header row text color |
Four built-in cover layouts. Set cover.style in your template manifest.
Accent bar across the top. Logo, title, and subtitle below. Company pinned to the bottom.
Everything centered vertically and horizontally. Accent rule between title and subtitle.
Top-left aligned with a short accent rule. Maximum whitespace.
Full-height accent bar on the left edge. Content offset to the right.
Optional structural CSS that goes beyond design tokens. Scope everything under .tpl-<your-id>.
tokens/* Remove H1 border (minimal-clean) */
.tpl-minimal-clean h1 {
border-bottom: none;
padding-bottom: 0;
}
/* Left accent rail on code blocks (technical-design) */
.tpl-technical-design pre {
border-left: 3px solid var(--doc-accent);
}
/* Monospace H3 (technical-design) */
.tpl-technical-design h3 {
font-family: var(--doc-mono);
font-size: 12pt;
}
/* Uppercase tracked headings (architecture) */
.tpl-architecture h1,
.tpl-architecture h2 {
text-transform: uppercase;
letter-spacing: 0.04em;
}
/* Small-caps H2 with bottom border (executive-report) */
.tpl-executive-report h2 {
border-left: none;
padding-left: 0;
padding-bottom: 0.15em;
border-bottom: 1px solid var(--doc-rule);
font-variant: small-caps;
letter-spacing: 0.03em;
}
Users can tweak these settings in Document Setup without editing the template. The template defines the defaults.
| Override | Type | Description |
|---|---|---|
| Primary color | color | Overrides --doc-accent, --doc-accent-dark, and --doc-table-head-bg |
| Secondary color | color | Overrides --doc-secondary |
| Page size | Letter / A4 | Overrides page.size |
| Margins | inches | Overrides all four page.margins values |
| Cover page | Auto / On / Off | Overrides cover.enabled |
| Table of contents | Auto / On / Off | Overrides toc.enabledByDefault |
| H1 page breaks | Auto / On / Off | Overrides h1NewPage |
| Watermark | text | Diagonal watermark (e.g. "DRAFT", "CONFIDENTIAL") |
| Number figures | boolean | Auto-number captioned figures and tables |
Don't start from scratch. Find the closest built-in template and duplicate it. You'll get a working baseline and only need to change what's different for your brand.
Put all brand colors and font choices in tokens rather than hard-coding them in theme.css. This lets users override primary/secondary color in Document Setup without breaking your design.
Every rule in theme.css should start with .tpl-your-id. Without scoping, your styles bleed into other templates and the preview pane.
Export a document with 10+ pages, tables, code blocks, and images. Check page breaks, repeating table headers, footer alignment, and cover page rendering.
pt units for font sizesPDF rendering works best with point units. Avoid px, rem, vh, or vw in print styles — they can produce inconsistent results across PDF engines.
Copy your template folder to colleagues' template directories, or use Enterprise managed config to push org-wide templates via MDM/Intune.
Duplicate a built-in template and make it yours. Custom templates are a Pro feature.
Download PaperQuire