The hardware and bandwidth for this mirror is donated by METANET, the Webhosting and Full Service-Cloud Provider.
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[@]metanet.ch.

MCQ and Assessment Modes

User goal

Assessment modes let instructors decide whether a lesson should generate coding practice, conceptual questions, or both.

Minimal examples

library(tutorizeR)

work_dir <- file.path(tempdir(), "tutorizeR-assessment")
source_file <- file.path(work_dir, "lesson.qmd")

tutorize(source_file, output_dir = work_dir, assessment = "code")
tutorize(source_file, output_dir = work_dir, assessment = "mcq")
tutorize(source_file, output_dir = work_dir, assessment = "both")

Modes

Realistic source pattern

question: "Which variable identifies the academic program?"
answers:
  - text: "program"
    correct: true
  - text: "quiz_score"
    correct: false

In a source lesson, this YAML would be placed inside a tutorizeR-mcq fenced block.

Realistic installed example

library(tutorizeR)

example_dir <- system.file("examples", "example_course_module", package = "tutorizeR")
work_dir <- file.path(tempdir(), "tutorizeR-assessment")
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"))

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

print(report$mcq)

Limits

Generated MCQs are scaffolds. Instructors should verify that questions are aligned with learning objectives and that distractors are plausible. The package does not measure whether an MCQ improves learning.

Reproducibility checklist

lines <- readLines(report$output_file)
any(grepl("learnr::question", lines, fixed = TRUE))

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.