CIPPCD 2025: Dynamic Reproducible
Documents for Public Policy with Quarto
Posit PBC
You know some Python + Markdown
You have worked in VS Code and/or Jupyter Lab
You want to learn about Quarto!
github.com/juliasilge/cippcd-2025
Or alternatively, set yourself up to work locally:
…an innovative, open-source scientific and technical publishing system compatible with Jupyter notebooks and all your favorite plain text markdown editors
Artwork from “Hello, Quarto” keynote by Julia Lowndes and Mine Çetinkaya-Rundel, presented at RStudio Conference 2022. Illustrated by Allison Horst.
you can weave together narrative and code to produce elegantly formatted output as documents, web pages, blog posts, books and more, with:
Sit back and enjoy! Or follow along with hello-penguins.qmd
.
Activity
pdf
, docx
, revealjs
code-fold
, toc
echo
, warning
)Quarto is a command line interface (CLI) that renders plain text formats (.qmd
, .rmd
, .md
) OR mixed formats (.ipynb
/Jupyter notebook) into static PDF/Word/HTML reports, books, websites, presentations and more.
Usage: quarto
Version: 1.6.42
Description:
Quarto CLI
Options:
-h, --help - Show this help.
-V, --version - Show the version number for this program.
Commands:
render [input] [args...] - Render files or projects to various document types.
preview [file] [args...] - Render and preview a document or website project.
serve [input] - Serve a Shiny interactive document.
create [type] [commands...] - Create a Quarto project or extension
use <type> [target] - Automate document or project setup tasks.
add <extension> - Add an extension to this folder or project
update [target...] - Updates an extension or global dependency.
remove [target...] - Removes an extension.
convert <input> - Convert documents to alternate representations.
pandoc [args...] - Run the version of Pandoc embedded within Quarto.
typst [args...] - Run the version of Typst embedded within Quarto.
run [script] [args...] - Run a TypeScript, R, Python, or Lua script.
install [target...] - Installs a global dependency (TinyTex or Chromium).
uninstall [tool] - Removes an extension.
tools - Display the status of Quarto installed dependencies
publish [provider] [path] - Publish a document or project to a provider.
check [target] - Verify correct functioning of Quarto installation.
help [command] - Show this help or the help of a sub-command.
jupyter
evaluates Python code and returns a .md
file along with the evaluated code.md
file by Pandoc and converted to a final output formatjupyter
or knitr
evaluates Python, Julia, R, or Observable code and returns a .md
file along with the evaluated code.md
file by Pandoc and converted to a final output formatin the Terminal in VS Code, Positron, or JupyterLab
Render to output formats:
# ipynb notebook
quarto render notebook.ipynb
quarto render notebook.ipynb --to docx
# plain text qmd
quarto render notebook.qmd
quarto render notebook.qmd --to pdf
Live preview server (re-render on save):
in the Editor in VS Code or Positron
Install and enable the Quarto extension
Clicking on Preview or Cmd + Shift + K
Quarto comes “batteries included” straight out of the box:
HTML reports and websites
PDF reports
MS Office (Word, Powerpoint)
Presentations (Powerpoint, Beamer, revealjs
)
Books
Manuscripts
Beyond! 🚀
Feature | Quarto |
---|---|
Basic Formats | html, pdf, docx, typst |
Beamer | beamer |
PowerPoint | pptx |
HTML Slides | revealjs |
Advanced Layout | Quarto Article Layout |
Cross References | Quarto Crossrefs |
Websites & Blogs | Quarto Websites, Quarto Blogs |
Books | Quarto Books |
Interactivity | Quarto Interactive Documents |
Journal Articles | Journal Articles |
Dashboards | Quarto Dashboards |
Activity
In VS Code, open the hello-penquins.qmd
file. Render the document to HTML.
Be aware you may need to use “Python: Select Interpreter” to use the local .venv
Add an author
field in the YAML and add your name.
Add some text and style it with bold, italics, etc, using the source editor as well as the visual editor.
Modify the figure to add units to the axis labels: grams for body weight and mm (milimeters) for flipper length. Render or preview the document and make sure the changes are reflected in the HTML output.
Change the html theme to sketchy
. See https://quarto.org/docs/output-formats/html-themes.html for documentation on HTML theming.
05:00
Where does the name “Quarto” come from?
quarto.org/docs/guide > Authoring & Computations
Slides created with Quarto