Introduction to Quarto
Advanced Quarto
Quarto projects: Websites
Quarto projects: Blogs
Quarto projects: Slides
Publish w/ GitHub Pages
Introduction to Quarto
Advanced Quarto
Quarto projects: Websites
Quarto projects: Blogs
Quarto projects: Slides
Publish w/ GitHub Pages
In data science, we often separate:
This creates several issues:
Credits: Ignasi Bartomeus
Paradigm introduced in 1984 by Donald Knuth1
Literate programming is an approach in which code, results and narrative are written together in the same document, so that programs can be understood by humans as well as executed by computers.
Reproducibility
Quarto and R Markdown are modern implementations of this paradigm
Quarto is an open-source scientific and technical publishing system designed to create reproducible documents, websites, presentations, books, and dashboards
Quarto is a CLI software supporting different languages (R, Python, Julia & Observable JS)
Quarto is a powerful, flexible and multi-language successor of R Markdown
Quarto supports dozens of output formats: HTML, PDF, Word, Slide, eBook, Website, etc.

.qmd file) with narrative, metadata and code chunks.md) file using knitr1.md file in the final output using Pandoc2
| Feature / Aspect | R Markdown | Quarto |
|---|---|---|
| File extension | .Rmd |
.qmd |
| Primary language support | R | R, Python, Julia, Observable JS |
| Execution engine for R | knitr |
knitr |
| Other languages | Limited (Python via reticulate) |
Jupyter kernels (Python, Julia, etc.) |
| Output formats1 | HTML, PDF, Word | HTML, PDF, Word, Reveal.js, Beamer, PowerPoint, dashboards |
| Project types1 | Individual documents | Documents, websites, books, dashboards |
| Cross-references1 | Limited, requires bookdown |
Built-in support for figures, tables, equations, sections |
| Themes & styling1 | Limited | Multiple themes, CSS/HTML customization |
| Chunk options | Inline w/ ```{r echo=TRUE} |
Hashpipe w/ #| echo: true |
| Rendering | R w/ rmarkdown::render() |
R w/ quarto::render() or CLI w/ quarto render |
1 The capabilities of R Markdown can be extended with additional R packages (distill, bookdown, blogdown, xaringan, etc.) but each plugin comes with its own specificity.
Quarto is an unified system with advanced features
Quarto is available for different IDE:
knitr and rmarkdown R packages.qmd file.qmd file---
title: "Hello Quarto"
author: "Jane DOE"
date: "2026-05-13"
format: html
---
# Introduction
Quarto is the next-generation replacement for `R Markdown`, and it
can run **R**, **Python**, **Julia**, and **JavaScript** code.
## R Code Example
Here's a simple R code chunk:
```{r}
#| echo: false
#| eval: true
summary(cars)
```
End of the demo..qmd file---
title: "Hello Quarto"
author: "Jane DOE"
date: "2026-05-13"
format: html
---
# Introduction
Quarto is the next-generation replacement for `R Markdown`, and it
can run **R**, **Python**, **Julia**, and **JavaScript** code.
## R Code Example
Here's a simple R code chunk:
```{r}
#| echo: false
#| eval: true
summary(cars)
```
End of the demo.YAML header
---key: value.qmd file---
title: "Hello Quarto"
author: "Jane DOE"
date: "2026-05-13"
format: html
---
# Introduction
Quarto is the next-generation replacement for `R Markdown`, and it
can run **R**, **Python**, **Julia**, and **JavaScript** code.
## R Code Example
Here's a simple R code chunk:
```{r}
#| echo: false
#| eval: true
summary(cars)
```
End of the demo.Formatted text
#, ##, ###, etc.**bold**, _italic_, `verbatim`[](url)
Learn more about the Markdown syntax here
.qmd file---
title: "Hello Quarto"
author: "Jane DOE"
date: "2026-05-13"
format: html
---
# Introduction
Quarto is the next-generation replacement for `R Markdown`, and it
can run **R**, **Python**, **Julia**, and **JavaScript** code.
## R Code Example
Here's a simple R code chunk:
```{r}
#| echo: false
#| eval: true
summary(cars)
```
End of the demo.Code chunks
``````r```{r}#| key: value
#| echo: true#| eval: false
Learn more about chunk options here
quarto render filename.qmdquarto::render("filename.qmd")
---
title: "Hello Quarto"
author: "Jane DOE"
date: "2026-05-13"
format: html
---
# Introduction
Quarto is the next-generation replacement for `R Markdown`, and it
can run **R**, **Python**, **Julia**, and **JavaScript** code.
## R Code Example
Here's a simple R code chunk:
```{r}
#| echo: true
#| eval: true
summary(cars)
```
End of the demo.
| Default | Left | Right | Center |
|---|---|---|---|
| 12 | 12 | 12 | 12 |
| 123 | 123 | 123 | 123 |
| 1 | 1 | 1 | 1 |
Learn more about tables here
These slides borrow content from the following resources:
Introduction to Quarto
Advanced Quarto (callout blocks, tabsets, parameters, citations, cross-references, extensions)
Quarto projects: Websites
Quarto projects: Blogs
Quarto projects: Slides
Publish w/ GitHub Pages