Hello Quarto: A World of Possibilities
(for Reproducible Publishing)
Duke University + Posit
2023-06-06
Decide which option you prefer and follow the steps.
Option 1: Own setup
Download and install the latest versions of R, RStudio, and Quarto:
4.2 or above: https://cran.r-project.org2023.03.1+446 or above: https://posit.co/download/rstudio-desktop1.3.354 or above: https://quarto.org/docs/get-startedInstall the following packages:
exercises.zip at https://mine.quarto.pub/quarto-monash/exercises.zip and unzip it on your Desktop or somewhere you can easily locate on your computer. Then, double click on exercises.Rproj to open the RStudio Project.Option 2: Posit Cloud
Click here to join the Posit Cloud space for the workshop. Log in using Google, GitHub, or Posit (e.g., shinyapps.io or Posit Cloud) authentication, join the space, and then click on Content on the top navigation bar.
Mine Çetinkaya-Rundel
Professor of the Practice, Duke University - Statistical Science
Developer Educator, Posit
R Markdown users/educators for 10+ years, Quarto users/educators for 1+ years
Meet 1-2 people around you!
01:00
My turn: Lecture segments + live coding
Our turn: Live coding + follow along
Your turn: Exercises
Don’t hesitate to raise your hand to ask a question throughout the workshop
I might be able to answer / help on the spot, or wait till the next “your turn” break to do so
I’ll assume you
know some R
have worked in RStudio
want to learn about Quarto
I’ll teach you
Quarto syntax and formats
More Markdown
Even more R along the way!
Have you completed the following?
Decide which option you prefer and follow the steps.
Option 1: Own setup
Download and install the latest versions of R, RStudio, and Quarto:
4.2 or above: https://cran.r-project.org2023.03.1+446 or above: https://posit.co/download/rstudio-desktop1.3.354 or above: https://quarto.org/docs/get-startedInstall the following packages:
exercises.zip at https://mine.quarto.pub/quarto-monash/exercises.zip and unzip it on your Desktop or somewhere you can easily locate on your computer. Then, double click on exercises.Rproj to open the RStudio Project.Option 2: Posit Cloud
Click here to join the Posit Cloud space for the workshop. Log in using Google, GitHub, or Posit (e.g., shinyapps.io or Posit Cloud) authentication, join the space, and then click on Content on the top navigation bar.
Let’s get started!
Artwork from “Hello, Quarto” keynote by Julia Lowndes and Mine Çetinkaya-Rundel, presented at RStudio Conference 2022. Illustrated by Allison Horst.
With Quarto you can weave together narrative text and code to produce elegantly formatted output as documents, web pages, blog posts, books and more.
just like R Markdown…
but not just like it, there’s more to it…
unifies + extends the R Markdown ecosystem
unifies + extends the R Markdown ecosystem
unifies for people who love R Markdown
unifies + extends the R Markdown ecosystem
unifies for people who love R Markdown
extends for people who don’t know R Markdown
Sit back and enjoy!
Open hello-penguins.qmd in RStudio and with the visual editor. Render the document. Update your name and re-render. Inspect components of the document and make one more update and re-render. Compare notes with neighbors about updates you’ve made and note any aspects of the document that are not clear after the tour and your first interaction with it.
05:00
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.
mine$ quarto --help
Usage: quarto
Version: 1.3.353
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
create-project [dir] - Create a project for rendering multiple documents
convert <input> - Convert documents to alternate representations.
pandoc [args...] - Run the version of Pandoc embedded within Quarto.
run [script] [args...] - Run a TypeScript, R, Python, or Lua script.
add <extension> - Add an extension to this folder or project
install [target...] - Installs an extension or global dependency.
publish [provider] [path] - Publish a document or project. Available providers include:
check [target] - Verify correct functioning of Quarto installation.
help [command] - Show this help or the help of a sub-command.knitrWe learned from 10 years of literate programming with knitr + rmarkdown

knitrknitrknitr or jupyter evaluates R/Python/Julia code and returns a .md file along with the evaluated code.md file by Pandoc and converted to a final output format


Rendering a Quarto file in RStudio via the Render button calls quarto render in a background job, preventing Quarto rendering from cluttering up the R console, and gives you and easy way to stop:
quarto render:Quarto comes “batteries included” straight out of the box
revealjs)| Feature | R Markdown | Quarto |
|---|---|---|
| Basic Formats | ||
| Beamer | beamer_presentation | beamer |
| PowerPoint | powerpoint_presentation | pptx |
| HTML Slides | revealjs | |
| Advanced Layout | Quarto Article Layout |
| Feature | R Markdown | Quarto |
|---|---|---|
| Cross References | Quarto Crossrefs | |
| Websites & Blogs | ||
| Books | bookdown | Quarto Books |
| Interactivity | Shiny Documents | Quarto Interactive Documents |
| Journal Articles | rticles | Journal Articles |
| Dashboards | flexdashboard | Coming soon! |
In RStudio, go to File > New File > Quarto document to create a Quarto document with HTML output. Render the document, which will ask you to give it a name – you can use my-first-document.qmd.
Use the visual editor for the next steps.
Add a title and your name as the author.
Create two sections, one with fact you want to learn and your favorite thing about R.
Add a table of contents.
Stretch goal: Change the html theme to sketchy.
05:00
You can render existing R Markdown documents with Quarto and you can rename them to .qmd files to turn them into Quarto documents.
You don’t have to do this – R Markdown continues to be maintained.
However, new features are being developed for Quarto.
Additionally, Quarto
Offers “batteries included” shared syntax across formats
Allows you to choose your own editor and your preferred data science language
Comes with richer and more accessible features out of the box
Is actively developed
Any questions / anything you’d like to review before we wrap up this module?
Where does the name “Quarto” come from?