Playbook
Quarto Graft separates concerns: contributors work in isolated graft branches, while the trunk maintainer orchestrates the unified site.
This page explains the roles and workflows in a quarto-graft project.
Roles
Trunk Maintainer
Responsibility: Manage the overall site structure, collars, builds, and graft lifecycle.
Owns: - The main branch and _quarto.yaml (collar definitions) - grafts.yaml configuration - Build and publish pipeline - Graft lifecycle management
Common Tasks:
Create a new graft for a contributor:
quarto-graft graft create contributor-name --collar articlesBuild all grafts and update navigation:
quarto-graft trunk buildCheck the status dashboard:
quarto-graft statusList and manage grafts:
quarto-graft graft list
quarto-graft graft destroy old-graftManage the render cache:
quarto-graft trunk cache update # after quarto render
quarto-graft trunk cache status # inspect cached pages
quarto-graft trunk cache clear # reset cacheDefine new collars in _quarto.yaml:
sidebar:
contents:
- section: New Section
contents:
- _GRAFT_COLLAR: new-collarWorkflows
Adding a New Collar
Trunk maintainer edits _quarto.yaml:
sidebar:
contents:
- section: Case Studies
contents:
- _GRAFT_COLLAR: case-studiesAuthors can now create grafts that attach to case-studies:
quarto-graft graft create my-case-study --collar case-studiesRetiring a Graft
Content creator archives their work (optional)
Trunk maintainer destroys the graft:
quarto-graft graft destroy old-graftRebuild to update navigation:
quarto-graft trunk build
Pre-rendering a Graft (Archive)
Graft authors can pre-render their content to speed up trunk builds. This is useful for grafts with expensive computations:
From the graft branch, archive the content:
git checkout graft/my-analysis quarto-graft graft archiveCommit and push the pre-rendered output:
git add _prerendered/ .graft-prerender.json git commit -m "Pre-render graft" git pushTrunk builds will automatically use the pre-rendered content (no re-rendering needed).
To revert to source-based rendering:
quarto-graft graft restoreCustom Organization Templates
Organizations can create standard templates:
# Organization's template repo
my-org-templates/
├── trunk-templates/
│ └── corporate/
│ ├── _quarto.yaml # Corporate branding
│ ├── docs/
│ └── grafts.yaml
└── graft-templates/
├── research-paper/
└── product-docs/
# Use organizational templates
quarto-graft trunk init "My Project" --template my-org-templates/trunk-templates/corporate
quarto-graft graft create study --template my-org-templates/graft-templates/research-paper