{
  "_id": "6a47943b2f27a93436c0d84e",
  "Package": "tutorial.helpers",
  "Title": "Helper Functions for Creating Tutorials",
  "Version": "0.6.2.9002",
  "Authors@R": "person(given = \"David\",\nfamily = \"Kane\",\nrole = c(\"aut\", \"cre\", \"cph\"),\nemail = \"dave.kane@gmail.com\",\ncomment = c(ORCID = \"0000-0002-6660-3934\"))",
  "Description": "Helper functions for creating, editing, and testing\ntutorials created with the 'learnr' package. Provides a simple\nmethod for allowing students to download their answers to\ntutorial questions. For examples of its use, see the\n'r4ds.tutorials' package.",
  "License": "MIT + file LICENSE",
  "Encoding": "UTF-8",
  "Roxygen": "list(markdown = TRUE)",
  "RoxygenNote": "7.3.3",
  "VignetteBuilder": "quarto",
  "Config/testthat/edition": "3",
  "BugReports": "https://github.com/PPBDS/tutorial.helpers/issues",
  "URL": "https://ppbds.github.io/tutorial.helpers/,\nhttps://github.com/PPBDS/tutorial.helpers",
  "Config/pak/sysreqs": "cmake make libuv1-dev libxml2-dev libssl-dev\nzlib1g-dev",
  "Repository": "https://ppbds.r-universe.dev",
  "Date/Publication": "2026-07-01 02:25:50 UTC",
  "RemoteUrl": "https://github.com/ppbds/tutorial.helpers",
  "RemoteRef": "HEAD",
  "RemoteSha": "b6a955c459be85c5eaaafb7dbd11636b79c51cdb",
  "NeedsCompilation": "no",
  "Packaged": {
    "Date": "2026-07-01 06:50:44 UTC",
    "User": "root"
  },
  "Author": "David Kane [aut, cre, cph] (ORCID:\n<https://orcid.org/0000-0002-6660-3934>)",
  "Maintainer": "David Kane <dave.kane@gmail.com>",
  "_user": "ppbds",
  "_type": "src",
  "_file": "tutorial.helpers_0.6.2.9002.tar.gz",
  "_fileid": "https://r2.ropensci.org/e31183d1f31218d3fae033a7cf05b60f71b25621f0cee8d2072aed6e5b3dcd35",
  "_filesize": 3790398,
  "_sha256": "e31183d1f31218d3fae033a7cf05b60f71b25621f0cee8d2072aed6e5b3dcd35",
  "_expires": "2026-10-11T10:51:38.000Z",
  "_created": "2026-07-01T06:50:44.000Z",
  "_published": "2026-07-03T10:51:39.403Z",
  "_jobs": [
    {
      "job": 84984362756,
      "time": 173,
      "config": "linux-devel-x86_64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "8002307428"
    },
    {
      "job": 84984363013,
      "time": 169,
      "config": "linux-release-x86_64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "8002306307"
    },
    {
      "job": 84984362943,
      "time": 181,
      "config": "macos-oldrel-arm64",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "8002313642"
    },
    {
      "job": 84984362833,
      "time": 147,
      "config": "macos-release-arm64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "8002303131"
    },
    {
      "job": 84984362555,
      "time": 254,
      "config": "source",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "8002252182"
    },
    {
      "job": 84984362803,
      "time": 169,
      "config": "wasm-release",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "8002305984"
    },
    {
      "job": 84984363101,
      "time": 136,
      "config": "windows-devel",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "8002296420"
    },
    {
      "job": 84984363225,
      "time": 138,
      "config": "windows-oldrel",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "8002296945"
    },
    {
      "job": 84984363079,
      "time": 141,
      "config": "windows-release",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "8002297810"
    }
  ],
  "_host": "GitHub-Actions",
  "_buildurl": "https://github.com/r-universe/ppbds/actions/runs/28499019805",
  "_status": "success",
  "_upstream": "https://github.com/ppbds/tutorial.helpers",
  "_commit": {
    "id": "b6a955c459be85c5eaaafb7dbd11636b79c51cdb",
    "author": "David Kane <dave.kane@gmail.com>",
    "committer": "David Kane <dave.kane@gmail.com>",
    "message": "update\n",
    "time": 1782872750
  },
  "_maintainer": {
    "name": "David Kane",
    "email": "dave.kane@gmail.com",
    "login": "davidkane9",
    "description": "Former Preceptor in Statistical Methods and Mathematics in the Department of Government at Harvard University. ",
    "uuid": 4552851,
    "orcid": "0000-0002-6660-3934"
  },
  "_distro": "resolute",
  "_registered": true,
  "_dependencies": [
    {
      "package": "R",
      "version": ">= 4.1.0",
      "role": "Depends"
    },
    {
      "package": "jsonlite",
      "role": "Imports"
    },
    {
      "package": "learnr",
      "role": "Imports"
    },
    {
      "package": "rmarkdown",
      "role": "Imports"
    },
    {
      "package": "rstudioapi",
      "role": "Imports"
    },
    {
      "package": "rvest",
      "role": "Imports"
    },
    {
      "package": "shiny",
      "role": "Imports"
    },
    {
      "package": "tibble",
      "role": "Imports"
    },
    {
      "package": "utils",
      "role": "Imports"
    },
    {
      "package": "fs",
      "role": "Suggests"
    },
    {
      "package": "googledrive",
      "role": "Suggests"
    },
    {
      "package": "httr",
      "role": "Suggests"
    },
    {
      "package": "knitr",
      "role": "Suggests"
    },
    {
      "package": "quarto",
      "role": "Suggests"
    },
    {
      "package": "roxygen2",
      "role": "Suggests"
    },
    {
      "package": "testthat",
      "version": ">= 3.0.0",
      "role": "Suggests"
    },
    {
      "package": "tidyverse",
      "role": "Suggests"
    }
  ],
  "_owner": "ppbds",
  "_selfowned": true,
  "_usedby": 2,
  "_updates": [
    {
      "week": "2025-27",
      "n": 5
    },
    {
      "week": "2025-28",
      "n": 9
    },
    {
      "week": "2025-29",
      "n": 6
    },
    {
      "week": "2025-30",
      "n": 19
    },
    {
      "week": "2025-31",
      "n": 19
    },
    {
      "week": "2025-32",
      "n": 39
    },
    {
      "week": "2025-33",
      "n": 18
    },
    {
      "week": "2025-35",
      "n": 2
    },
    {
      "week": "2025-36",
      "n": 29
    },
    {
      "week": "2025-37",
      "n": 16
    },
    {
      "week": "2025-38",
      "n": 4
    },
    {
      "week": "2025-39",
      "n": 4
    },
    {
      "week": "2025-42",
      "n": 2
    },
    {
      "week": "2025-43",
      "n": 3
    },
    {
      "week": "2025-44",
      "n": 4
    },
    {
      "week": "2025-45",
      "n": 3
    },
    {
      "week": "2025-47",
      "n": 3
    },
    {
      "week": "2025-48",
      "n": 6
    },
    {
      "week": "2025-49",
      "n": 3
    },
    {
      "week": "2025-50",
      "n": 3
    },
    {
      "week": "2025-51",
      "n": 5
    },
    {
      "week": "2025-52",
      "n": 15
    },
    {
      "week": "2026-02",
      "n": 1
    },
    {
      "week": "2026-12",
      "n": 1
    },
    {
      "week": "2026-13",
      "n": 1
    },
    {
      "week": "2026-15",
      "n": 2
    },
    {
      "week": "2026-16",
      "n": 1
    },
    {
      "week": "2026-17",
      "n": 4
    },
    {
      "week": "2026-18",
      "n": 1
    },
    {
      "week": "2026-19",
      "n": 2
    },
    {
      "week": "2026-20",
      "n": 5
    },
    {
      "week": "2026-21",
      "n": 1
    },
    {
      "week": "2026-22",
      "n": 2
    },
    {
      "week": "2026-27",
      "n": 6
    }
  ],
  "_tags": [
    {
      "name": "v0.6.0",
      "date": "2025-09-10"
    },
    {
      "name": "v0.6.1",
      "date": "2025-12-22"
    }
  ],
  "_stars": 7,
  "_contributors": [
    {
      "user": "davidkane9",
      "count": 647,
      "uuid": 4552851
    },
    {
      "user": "anishtalla27",
      "count": 59,
      "uuid": 214409300
    },
    {
      "user": "ptweeet",
      "count": 29,
      "uuid": 123575794
    },
    {
      "user": "usatvika",
      "count": 16,
      "uuid": 171902086
    },
    {
      "user": "stepher-sabio",
      "count": 8,
      "uuid": 218929692
    },
    {
      "user": "xavidp",
      "count": 8,
      "uuid": 366309
    },
    {
      "user": "lukearoni",
      "count": 2,
      "uuid": 216569269
    },
    {
      "user": "lipogg",
      "count": 1,
      "uuid": 89029943
    },
    {
      "user": "matthewru",
      "count": 1,
      "uuid": 21972371
    }
  ],
  "_userbio": {
    "uuid": 67690252,
    "type": "organization",
    "name": "Preceptor's Primer",
    "followers": 15,
    "description": "Code for \"Preceptor's Primer for Bayesian Data Science: : Using the Cardinal Virtues for Inference\" and for some associated R packages."
  },
  "_downloads": {
    "count": 826,
    "source": "https://cranlogs.r-pkg.org/downloads/total/last-month/tutorial.helpers"
  },
  "_devurl": "https://github.com/ppbds/tutorial.helpers",
  "_pkgdown": "https://ppbds.github.io/tutorial.helpers/",
  "_searchresults": 334,
  "_quarto": true,
  "_topics": [
    "quarto"
  ],
  "_rbuild": "4.6.1",
  "_assets": [
    "extra/citation.cff",
    "extra/citation.html",
    "extra/citation.json",
    "extra/citation.txt",
    "extra/contents.json",
    "extra/NEWS.html",
    "extra/NEWS.txt",
    "extra/readme.html",
    "extra/readme.md",
    "extra/tutorial.helpers.html",
    "LICENSE",
    "manual.pdf"
  ],
  "_homeurl": "https://github.com/ppbds/tutorial.helpers",
  "_realowner": "ppbds",
  "_cranurl": true,
  "_releases": [
    {
      "version": "0.2.2",
      "date": "2023-05-08"
    },
    {
      "version": "0.2.3",
      "date": "2023-05-12"
    },
    {
      "version": "0.2.5",
      "date": "2023-05-21"
    },
    {
      "version": "0.2.6",
      "date": "2024-01-17"
    },
    {
      "version": "0.2.7",
      "date": "2024-05-06"
    },
    {
      "version": "0.3.0",
      "date": "2024-06-26"
    },
    {
      "version": "0.3.1",
      "date": "2024-12-07"
    },
    {
      "version": "0.4.2",
      "date": "2025-03-05"
    },
    {
      "version": "0.5.0",
      "date": "2025-05-11"
    },
    {
      "version": "0.6.0",
      "date": "2025-09-11"
    },
    {
      "version": "0.6.1",
      "date": "2025-12-23"
    }
  ],
  "_exports": [
    "check_current_tutorial",
    "check_key_vars",
    "check_membership",
    "check_tutorial_defaults",
    "determine_code_chunk_name",
    "determine_exercise_number",
    "download_google_drive",
    "format_tutorial",
    "gather_submissions",
    "get_submissions_from_learnr_session",
    "knit_tutorials",
    "make_exercise",
    "match_questions",
    "open_github_pages",
    "return_tutorial_paths",
    "set_positron_settings",
    "set_rprofile_settings",
    "show_file",
    "submission_server",
    "submission_ui",
    "submissions_answers",
    "submissions_summary",
    "write_answers"
  ],
  "_help": [
    {
      "page": "check_current_tutorial",
      "title": "Check current tutorial",
      "topics": [
        "check_current_tutorial"
      ]
    },
    {
      "page": "check_key_vars",
      "title": "Check Key Variables in List of Tibbles",
      "topics": [
        "check_key_vars"
      ]
    },
    {
      "page": "check_membership",
      "title": "Check Membership in List of Tibbles",
      "topics": [
        "check_membership"
      ]
    },
    {
      "page": "check_tutorial_defaults",
      "title": "Confirm that a tutorial has the recommended components",
      "topics": [
        "check_tutorial_defaults"
      ]
    },
    {
      "page": "determine_code_chunk_name",
      "title": "Determine the code chunk name of a new exercise in a tutorial.",
      "topics": [
        "determine_code_chunk_name"
      ]
    },
    {
      "page": "determine_exercise_number",
      "title": "Finds the number of the next exercise in a tutorial",
      "topics": [
        "determine_exercise_number"
      ]
    },
    {
      "page": "download_google_drive",
      "title": "Download Files from a Google Drive Folder",
      "topics": [
        "download_google_drive"
      ]
    },
    {
      "page": "format_tutorial",
      "title": "Format RMarkdown tutorial code chunks",
      "topics": [
        "format_tutorial"
      ]
    },
    {
      "page": "gather_submissions",
      "title": "Gather Submissions",
      "topics": [
        "gather_submissions"
      ]
    },
    {
      "page": "get_submissions_from_learnr_session",
      "title": "Return a list of tutorial answers",
      "topics": [
        "get_submissions_from_learnr_session"
      ]
    },
    {
      "page": "knit_tutorials",
      "title": "Knit a set of tutorials",
      "topics": [
        "knit_tutorials"
      ]
    },
    {
      "page": "exercise_creation",
      "title": "Add a tutorial code exercise or question to the active document",
      "topics": [
        "make_exercise"
      ]
    },
    {
      "page": "match_questions",
      "title": "Match Questions by Pattern",
      "topics": [
        "match_questions"
      ]
    },
    {
      "page": "open_github_pages",
      "title": "Open Multiple GitHub Pages in Browser Tabs",
      "topics": [
        "open_github_pages"
      ]
    },
    {
      "page": "return_tutorial_paths",
      "title": "Return all the paths to the tutorials in a package",
      "topics": [
        "return_tutorial_paths"
      ]
    },
    {
      "page": "set_positron_settings",
      "title": "Configure Positron Settings",
      "topics": [
        "set_positron_settings"
      ]
    },
    {
      "page": "set_rprofile_settings",
      "title": "Configure R Profile Settings for Better User Experience",
      "topics": [
        "set_rprofile_settings"
      ]
    },
    {
      "page": "show_file",
      "title": "Display the contents of a text file that match a pattern",
      "topics": [
        "show_file"
      ]
    },
    {
      "page": "submission_functions",
      "title": "Tutorial submission functions",
      "topics": [
        "submission_server",
        "submission_ui"
      ]
    },
    {
      "page": "submissions_answers",
      "title": "Extract Answers from Submissions with Filtering",
      "topics": [
        "submissions_answers"
      ]
    },
    {
      "page": "submissions_summary",
      "title": "Process Submissions Summary",
      "topics": [
        "submissions_summary"
      ]
    },
    {
      "page": "write_answers",
      "title": "Write tutorial answers to file",
      "topics": [
        "write_answers"
      ]
    }
  ],
  "_readme": "https://github.com/ppbds/tutorial.helpers/raw/HEAD/README.md",
  "_rundeps": [
    "askpass",
    "backports",
    "base64enc",
    "bslib",
    "cachem",
    "checkmate",
    "cli",
    "commonmark",
    "curl",
    "digest",
    "evaluate",
    "fastmap",
    "fontawesome",
    "fs",
    "glue",
    "highr",
    "htmltools",
    "htmlwidgets",
    "httpuv",
    "httr",
    "jquerylib",
    "jsonlite",
    "knitr",
    "later",
    "learnr",
    "lifecycle",
    "litedown",
    "magrittr",
    "markdown",
    "memoise",
    "mime",
    "openssl",
    "otel",
    "pillar",
    "pkgconfig",
    "promises",
    "R6",
    "rappdirs",
    "Rcpp",
    "renv",
    "rlang",
    "rmarkdown",
    "rprojroot",
    "rstudioapi",
    "rvest",
    "sass",
    "selectr",
    "shiny",
    "sourcetools",
    "sys",
    "tibble",
    "tinytex",
    "utf8",
    "vctrs",
    "withr",
    "xfun",
    "xml2",
    "xtable",
    "yaml"
  ],
  "_vignettes": [
    {
      "source": "downloads.qmd",
      "filename": "downloads.html",
      "title": "Enable Students to Download Their Tutorial Answers",
      "engine": "quarto::html",
      "headings": [],
      "created": "2025-02-14 12:33:07",
      "modified": "2025-09-01 21:03:00",
      "commits": 4
    },
    {
      "source": "addins.qmd",
      "filename": "addins.html",
      "title": "Functions for Working with Tutorials",
      "engine": "quarto::html",
      "headings": [
        "Overview",
        "Tutorial Written Exercise (without and with answers)",
        "Format exercise numbers and chunk labels"
      ],
      "created": "2025-02-14 12:33:07",
      "modified": "2026-07-01 02:25:50",
      "commits": 5
    },
    {
      "source": "testing.qmd",
      "filename": "testing.html",
      "title": "Testing Your Package of Tutorials",
      "engine": "quarto::html",
      "headings": [],
      "created": "2025-02-14 12:33:07",
      "modified": "2026-06-29 21:32:10",
      "commits": 3
    },
    {
      "source": "ai.qmd",
      "filename": "ai.html",
      "title": "Tutorials in the Age of AI",
      "engine": "quarto::html",
      "headings": [
        "Introduction",
        "Overview",
        "Questions",
        "Knowledge drops",
        "Inputs",
        "Data",
        "Images",
        "Complex text",
        "Tutorial Introduction",
        "Tutorial Topics",
        "Plotting Questions",
        "Tutorial Summary",
        "Appendix: Checking a tutorial",
        "If devtools::check() fails",
        "Difficult bugs"
      ],
      "created": "2025-07-25 21:26:31",
      "modified": "2026-07-01 02:25:50",
      "commits": 26
    }
  ],
  "_score": 9.882594656907646,
  "_indexed": true,
  "_nocasepkg": "tutorial.helpers",
  "_universes": [
    "ppbds",
    "davidkane9"
  ],
  "_binaries": [
    {
      "r": "4.7.0",
      "os": "linux",
      "version": "0.6.2.9002",
      "date": "2026-07-01T06:53:23.000Z",
      "distro": "resolute",
      "commit": "b6a955c459be85c5eaaafb7dbd11636b79c51cdb",
      "fileid": "https://r2.ropensci.org/32be0eb0a7d768a92413a52a3a1512a4e79c34ad1c8769a747ea202ef30d66a4",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/ppbds/actions/runs/28499019805"
    },
    {
      "r": "4.6.1",
      "os": "linux",
      "version": "0.6.2.9002",
      "date": "2026-07-01T06:53:20.000Z",
      "distro": "resolute",
      "commit": "b6a955c459be85c5eaaafb7dbd11636b79c51cdb",
      "fileid": "https://r2.ropensci.org/237078a74054b774ca277b298e6361d1572bdbd493c6d2efd8ecbc8e46290be3",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/ppbds/actions/runs/28499019805"
    },
    {
      "r": "4.5.3",
      "os": "mac",
      "version": "0.6.2.9002",
      "date": "2026-07-01T06:53:42.000Z",
      "commit": "b6a955c459be85c5eaaafb7dbd11636b79c51cdb",
      "fileid": "https://r2.ropensci.org/23423efb96664f88000c7cb464316014d416acf274cc887d7001cb75db109054",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/ppbds/actions/runs/28499019805"
    },
    {
      "r": "4.6.1",
      "os": "mac",
      "version": "0.6.2.9002",
      "date": "2026-07-01T06:53:09.000Z",
      "commit": "b6a955c459be85c5eaaafb7dbd11636b79c51cdb",
      "fileid": "https://r2.ropensci.org/9988f4bda440e905410f17ed58c23f35c6737d8d62d2b89ff7a49b9666766a7e",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/ppbds/actions/runs/28499019805"
    },
    {
      "r": "4.6.0",
      "os": "wasm",
      "version": "0.6.2.9002",
      "date": "2026-07-01T06:53:44.000Z",
      "commit": "b6a955c459be85c5eaaafb7dbd11636b79c51cdb",
      "fileid": "https://r2.ropensci.org/8259bebe47b240608c3ea40c100e7b2caa73c302e7c1e9cb8daedec7519e7ed9",
      "status": "success",
      "buildurl": "https://github.com/r-universe/ppbds/actions/runs/28499019805"
    },
    {
      "r": "4.7.0",
      "os": "win",
      "version": "0.6.2.9002",
      "date": "2026-07-01T06:52:34.000Z",
      "commit": "b6a955c459be85c5eaaafb7dbd11636b79c51cdb",
      "fileid": "https://r2.ropensci.org/cd1b332054f3ffd74bb4e8084a5f9169948ed1e754eac34c7052dd7d44662eb4",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/ppbds/actions/runs/28499019805"
    },
    {
      "r": "4.5.3",
      "os": "win",
      "version": "0.6.2.9002",
      "date": "2026-07-01T06:52:31.000Z",
      "commit": "b6a955c459be85c5eaaafb7dbd11636b79c51cdb",
      "fileid": "https://r2.ropensci.org/20ee6d3dfce493979af7f90d2e32b9d2f6aa3df557ab5c10c35062b5f1eecb1d",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/ppbds/actions/runs/28499019805"
    },
    {
      "r": "4.6.1",
      "os": "win",
      "version": "0.6.2.9002",
      "date": "2026-07-01T06:52:41.000Z",
      "commit": "b6a955c459be85c5eaaafb7dbd11636b79c51cdb",
      "fileid": "https://r2.ropensci.org/baf8d9c530021b6fdf493f85bf2c0909aeece060bda42dce32854a862b10e854",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/ppbds/actions/runs/28499019805"
    }
  ]
}