Mastering Quarto CLI: From Authoring to Publishing

Dates

5th-6th February 2026

To foster international participation, this course will be held online

 

Course overview

 

This comprehensive workshop provides an immersive journey through the Quarto ecosystem, designed to transform participants from newcomers to confident practitioners capable of creating sophisticated, reproducible documents and interactive publications.
Through seven structured sessions, attendees will master the complete Quarto workflow from initial setup and Markdown fundamentals to advanced theming, multi-format publishing, and professional deployment strategies. The workshop emphasises practical, hands-on learning with real-world applications, covering project architecture, computational integration across R/Python/Julia, advanced formatting techniques, and modern publishing workflows.
By the end of this workshop, participants will have developed the expertise to create polished, professional publications that seamlessly integrate narrative content with executable code whilst maintaining reproducibility across multiple output formats.

Workshop Objectives

• Establish a solid foundation in Quarto fundamentals, including installation, project types, and the command-line interface.
• Master authoring essentials through Markdown fundamentals, Quarto-specific features, and YAML configuration.
• Integrate computational workflows by embedding R, Python, and Julia code with proper execution control and caching strategies.
• Develop professional publications using advanced project structures, multi-format optimisation, and custom formatting techniques.
• Implement cohesive branding and visual identity across formats using Bootstrap theming, brand.yml systems, and Pandoc templating.
• Deploy projects confidently through various publishing platforms including Quarto Pub, GitHub Pages, and automated workflows.

Prerequisites

Prior to the workshop, please ensure you have the following installed on your computer.  

  • Quarto CLI 1.7.26 or higher: https://quarto.org/docs/get-started 
  • R 4.5.* or higher: https://cran.r-project.org
  • Python 3.13.* or higher: https://www.python.org/downloads/
  • Julia 1.11.* or higher: https://julialang.org/downloads/

Alternatively, you can use GitHub Codespaces

./.devcontainer/setup.sh --what <all|r|python|julia>

 

Session content

Day 1 - 2-5 PM Berlin time

Session 1: Introduction & Setup 

Welcome & Overview

  • Workshop objectives and participant goals

  • Quarto overview: purpose, strengths, and reproducibility benefits

  • What Quarto is and how it works with Pandoc

  • Brief look at the Quarto Guide

Installation & Environment Setup

  • Installing Quarto (installer, Homebrew, Chocolatey)

  • Verify installation with quarto check

  • Quarto as a command-line interface

Quarto Projects

  • Project types: default, website, blog, book, manuscript

  • Creating projects with quarto create project

  • Writing with various editors (VS Code, RStudio, Jupyter, etc.)

 

Session 2: Authoring Essentials 

Markdown Fundamentals

  • Creating structured documents: headings, lists, links, and text formatting

  • Best practices for clean, reproducible content

  • Working with code blocks, tables, and mathematical expressions

Quarto Markdown

  • Callout blocks, shortcodes, and Mermaid diagrams

  • Cross-references for figures, tables, and custom elements

  • Code annotations and advanced formatting

YAML Configuration

  • Document headers and multi-format output

  • Metadata inheritance and project configuration

  • Extensions and customization options

 

Session 3: Embedding Computations & Code 

Computing Environments

  • Setup for R, Python, and Julia

  • Engine configuration and code cell structure

  • Multi-language workflows

Execution Options

  • Code cell options using comment + pipe syntax

  • Control visibility, evaluation, and output

  • Global execution settings in YAML

Cache and Freeze

  • Cache for development speed vs. freeze for collaboration

  • Jupyter and Knitr caching systems

  • CLI commands for cache and freeze management

Parameters

  • Creating dynamic document variations

  • Defining parameters in Python and R

  • Command-line parameter passing and YAML files

Day 2 - 2-5 PM Berlin time

 

Session 4: Formats & Projects 

Quarto Projects

  • Project types and architecture: default, website, blog, manuscript, book

  • Decision framework based on publishing goals

  • Understanding project structure and config files

Multiple Formats

  • Multi-format output optimization

  • Conditional content by format

  • Cross-format resource and figure management

Custom Formats

  • Template partials and Pandoc templating system

  • Creating reusable format components

Advanced Project Features

  • Shared metadata with _metadata.yml

  • Pre/post-render scripts for workflow automation

  • Project profiles and environment variables

 

Session 5: Formatting & Branding

Bootstrap Theming & Customization

  • Bootstrap 5 integration and theme selection

  • Customization via YAML and CSS

  • Theme layering and variables

Unified Branding with brand.yml

  • Cross-format consistency with colors, fonts, and logos

  • Integration with Bootstrap and format options

Pandoc Templating & Extensions

  • Pandoc syntax: variables, conditionals, loops

  • Developing reusable brand extensions

Typst Customization

  • Typst templates for PDF branding

  • Template structure and brand.yml integration

  • Consistent visual identity

 

Session 6: Publishing 

Publishing Options Overview

  • Comparing Quarto Pub, GitHub Pages, and Netlify

  • Choosing the right platform

Quarto Pub & GitHub Pages

  • Step-by-step deployment workflow

  • Three methods: docs folder, quarto publish, GitHub Actions

  • _publish.yml configuration

Code Execution Strategies

  • Local execution vs. CI execution

  • Environment management and version control best practices

Advanced Topics

  • Custom domains

  • Automated deployment workflows

  • Troubleshooting publishing issues

 

Session 7: Closing & Next Steps 

  • Recap: Key learning outcomes

  • Resources: Links to Quarto documentation and tutorials

  • Feedback: Collect insights for future editions

 

Instructor

 

 

Dr. Mickaël CANOUIL  

 

His research has contributed to understanding the genetic and molecular mechanisms underlying metabolic diseases, with publications in leading journals. Currently, he works as a consultant in biostatistics, applying my expertise to diverse projects in multi-omics and data analysis. He is also deeply involved in the Quarto ecosystem, developing extensions and tools that enhance reproducibility and scientific communication. His contributions, including Quarto Wizard and various Quarto extensions, aim to streamline workflows for researchers and data scientists.

 


COst overview

 

Package 1

 

 

 

280 €

  


Related courses

1- Dealing with messy data in R - ONLINE, 8-10 April

 

2- Handling Missing Data in R - ONLINE, 22-24 April

 

3 - Beyond Beginner R - ONLINE, 1-4 June

 

4 - Introduction to R Shiny - ONLINE, 9-10 June

Cancellation Policy:

 

> 30  days before the start date = 30% cancellation fee

< 30 days before the start date= No Refund.

 

Physalia-courses cannot be held responsible for any travel fees, accommodation or other expenses incurred to you as a result of the cancellation.