The hardware and bandwidth for this mirror is donated by dogado GmbH, the Webhosting and Full Service-Cloud Provider. Check out our Wordpress Tutorial.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]dogado.de.

Conversion for R Markdown and Quarto

User goal

This vignette helps instructors decide whether to target learnr or quarto-live when converting existing R Markdown or Quarto material.

Minimal examples

library(tutorizeR)

work_dir <- file.path(tempdir(), "tutorizeR-formats")

tutorize(file.path(work_dir, "lesson.Rmd"), output_dir = work_dir, format = "learnr", assessment = "both")
tutorize(file.path(work_dir, "lesson.qmd"), output_dir = work_dir, format = "quarto-live", assessment = "code")

Choosing an output format

Use learnr when the course already supports RStudio or Shiny-based tutorials and when gradethis feedback is useful. Use quarto-live when browser-based execution is preferred and the teaching project has the Quarto live extension installed.

Realistic installed example

library(tutorizeR)

example_dir <- system.file("examples", "example_course_module", package = "tutorizeR")
work_dir <- file.path(tempdir(), "tutorizeR-formats")
dir.create(work_dir, recursive = TRUE, showWarnings = FALSE)
file.copy(file.path(example_dir, "lesson-source.qmd"), work_dir, overwrite = TRUE)
file.copy(file.path(example_dir, "student_activity.csv"), work_dir, overwrite = TRUE)

qb <- load_question_bank(file.path(example_dir, "question-bank"))

learnr_report <- tutorize(
  input = file.path(work_dir, "lesson-source.qmd"),
  output_dir = work_dir,
  format = "learnr",
  assessment = "both",
  question_bank = qb,
  overwrite = TRUE,
  verbose = FALSE
)

live_report <- tutorize(
  input = file.path(work_dir, "lesson-source.qmd"),
  output_dir = work_dir,
  format = "quarto-live",
  assessment = "both",
  question_bank = qb,
  overwrite = TRUE,
  verbose = FALSE
)

Limits

When targeting quarto-live, install the extension in the teaching project:

system("quarto add r-wasm/quarto-live")

Generated output should be reviewed in the environment where students will use it, because package availability and browser execution settings can differ.

Reproducibility checklist

file.exists(learnr_report$output_file)
file.exists(live_report$output_file)

These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.
Health stats visible at Monitor.