{
  "_id": "6a4991be6d67900babdfc25a",
  "Package": "ggcheck",
  "Title": "Inspect 'ggplot2' Plots for Automated Grading in Learning\nExercises",
  "Version": "0.0.5",
  "Authors@R": "c(\nperson(\"Garrick\", \"Aden-Buie\", , \"garrick@rstudio.com\", role = c(\"aut\", \"cre\"),\ncomment = c(ORCID = \"0000-0002-7111-0077\")),\nperson(\"Garrett\", \"Grolemund\", , \"garrett@rstudio.com\", role = c(\"ccp\", \"aut\"),\ncomment = c(ORCID = \"0000-0002-7765-6011\")),\nperson(\"Nischal\", \"Shrestha\", , \"nsrocker92@gmail.com\", role = \"aut\",\ncomment = c(ORCID = \"0000-0003-3321-1712\")),\nperson(\"Alexander\", \"Rossell Hayes\", , \"alex.rossellhayes@rstudio.com\", role = \"ctb\",\ncomment = c(ORCID = \"0000-0001-9412-0457\")),\nperson(\"Sara\", \"Altman\", , \"sara.altman@rstudio.com\", role = \"ctb\",\ncomment = c(ORCID = \"0000-0002-2529-5680\")),\nperson(\"RStudio, PBC\", role = c(\"cph\", \"fnd\"))\n)",
  "Description": "'ggcheck' provides functions that inspect 'ggplot2'\nobjects to make it easier for teachers to check that student\nplots meet expectations. Designed primarily for automated\ngrading via 'gradethis' in interactive 'learnr' tutorials.",
  "License": "MIT + file LICENSE",
  "URL": "https://github.com/rstudio/ggcheck",
  "BugReports": "https://github.com/rstudio/ggcheck/issues",
  "Remotes": [
    "rstudio/gradethis"
  ],
  "Config/Needs/learnr": "rstudio/learnr, rstudio/gradethis",
  "Config/Needs/website": "pkgdown, tidyverse/tidytemplate",
  "Config/roxygen2/version": "8.0.0",
  "Config/testthat/edition": "3",
  "Encoding": "UTF-8",
  "Roxygen": "list(markdown = TRUE)",
  "Config/pak/sysreqs": "cmake make libuv1-dev zlib1g-dev",
  "Repository": "https://rstudio.r-universe.dev",
  "Date/Publication": "2026-06-22 11:58:17 UTC",
  "RemoteUrl": "https://github.com/rstudio/ggcheck",
  "RemoteRef": "HEAD",
  "RemoteSha": "70543ad8e3e4578a37a01dce695e6829ba7cf505",
  "NeedsCompilation": "no",
  "Packaged": {
    "Date": "2026-06-22 13:57:17 UTC",
    "User": "root"
  },
  "Author": "Garrick Aden-Buie [aut, cre] (ORCID:\n<https://orcid.org/0000-0002-7111-0077>),\nGarrett Grolemund [ccp, aut] (ORCID:\n<https://orcid.org/0000-0002-7765-6011>),\nNischal Shrestha [aut] (ORCID: <https://orcid.org/0000-0003-3321-1712>),\nAlexander Rossell Hayes [ctb] (ORCID:\n<https://orcid.org/0000-0001-9412-0457>),\nSara Altman [ctb] (ORCID: <https://orcid.org/0000-0002-2529-5680>),\nRStudio, PBC [cph, fnd]",
  "Maintainer": "Garrick Aden-Buie <garrick@rstudio.com>",
  "_user": "rstudio",
  "_type": "src",
  "_file": "ggcheck_0.0.5.tar.gz",
  "_fileid": "https://r2.ropensci.org/873c37ea19841079806f0783df6302044952323683fc8bda12314ad0a65ba854",
  "_filesize": 316984,
  "_sha256": "873c37ea19841079806f0783df6302044952323683fc8bda12314ad0a65ba854",
  "_expires": "2026-10-12T23:05:32.000Z",
  "_created": "2026-06-22T13:57:17.000Z",
  "_published": "2026-07-04T23:05:34.368Z",
  "_jobs": [
    {
      "job": 85174351526,
      "time": 140,
      "config": "linux-devel-x86_64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "7794513891"
    },
    {
      "job": 85174351632,
      "time": 134,
      "config": "linux-release-x86_64",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "7794510867"
    },
    {
      "job": 85174351708,
      "time": 82,
      "config": "macos-oldrel-arm64",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "7794519820"
    },
    {
      "job": 85174351550,
      "time": 99,
      "config": "macos-release-arm64",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "7794529212"
    },
    {
      "job": 85174351364,
      "time": 198,
      "config": "source",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "7794450364"
    },
    {
      "job": 85174351651,
      "time": 119,
      "config": "wasm-release",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "7794504366"
    },
    {
      "job": 85174351645,
      "time": 98,
      "config": "windows-devel",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "7794495056"
    },
    {
      "job": 85174351616,
      "time": 116,
      "config": "windows-oldrel",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "7794503170"
    },
    {
      "job": 85174351535,
      "time": 118,
      "config": "windows-release",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "7794508321"
    }
  ],
  "_host": "GitHub-Actions",
  "_buildurl": "https://github.com/r-universe/rstudio/actions/runs/27957898838",
  "_status": "success",
  "_upstream": "https://github.com/rstudio/ggcheck",
  "_commit": {
    "id": "70543ad8e3e4578a37a01dce695e6829ba7cf505",
    "author": "github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
    "committer": "GitHub <noreply@github.com>",
    "message": "Automated package maintenance (#41)\n\nCo-authored-by: gadenbuie <gadenbuie@users.noreply.github.com>",
    "time": 1782129497
  },
  "_maintainer": {
    "name": "Garrick Aden-Buie",
    "email": "garrick@rstudio.com",
    "login": "gadenbuie",
    "mastodon": "@grrrck@fosstodon.org",
    "bluesky": "@grrrck.xyz",
    "description": "Software engineer for Shiny at @posit-pbc",
    "uuid": 5420529,
    "orcid": "0000-0002-7111-0077"
  },
  "_distro": "noble",
  "_registered": true,
  "_dependencies": [
    {
      "package": "ggplot2",
      "role": "Imports"
    },
    {
      "package": "gradethis",
      "version": ">= 0.2.12.9004",
      "role": "Imports"
    },
    {
      "package": "purrr",
      "role": "Imports"
    },
    {
      "package": "rlang",
      "role": "Imports"
    },
    {
      "package": "utils",
      "role": "Imports"
    },
    {
      "package": "testthat",
      "role": "Suggests"
    }
  ],
  "_owner": "rstudio",
  "_selfowned": true,
  "_usedby": 0,
  "_updates": [
    {
      "week": "2026-25",
      "n": 5
    },
    {
      "week": "2026-26",
      "n": 1
    }
  ],
  "_tags": [],
  "_topics": [
    "autograding",
    "ggplot2",
    "gradethis",
    "learnr"
  ],
  "_stars": 23,
  "_contributors": [
    {
      "user": "gadenbuie",
      "count": 55,
      "uuid": 5420529
    },
    {
      "user": "garrettgman",
      "count": 27,
      "uuid": 85014
    },
    {
      "user": "nischalshrestha",
      "count": 25,
      "uuid": 9612286
    },
    {
      "user": "rossellhayes",
      "count": 10,
      "uuid": 44556601
    },
    {
      "user": "skaltman",
      "count": 1,
      "uuid": 18153457
    }
  ],
  "_userbio": {
    "uuid": 513560,
    "type": "organization",
    "name": "RStudio",
    "followers": 3506
  },
  "_downloads": {
    "count": 0,
    "source": "https://cranlogs.r-pkg.org/downloads/total/last-month/ggcheck"
  },
  "_devurl": "https://github.com/rstudio/ggcheck",
  "_searchresults": 94,
  "_rbuild": "4.6.0",
  "_assets": [
    "extra/citation.cff",
    "extra/citation.html",
    "extra/citation.json",
    "extra/citation.txt",
    "extra/contents.json",
    "extra/ggcheck.html",
    "extra/NEWS.html",
    "extra/NEWS.txt",
    "extra/readme.html",
    "extra/readme.md",
    "LICENSE",
    "manual.pdf"
  ],
  "_cranurl": false,
  "_exports": [
    ".result",
    "default_label",
    "default_param",
    "fail_if_not_ggplot",
    "get_coordinate_system",
    "get_data",
    "get_default_labels",
    "get_default_params",
    "get_geom_layer",
    "get_geoms",
    "get_geoms_stats",
    "get_labels",
    "get_mappings",
    "get_stat_layer",
    "get_stats",
    "identical_aes",
    "is_ggplot",
    "ith_data",
    "ith_data_is",
    "ith_geom",
    "ith_geom_is",
    "ith_geom_stat",
    "ith_mappings",
    "ith_mappings_use",
    "ith_stat",
    "ith_stat_is",
    "n_layers",
    "stop_if_not_ggplot",
    "uses_aesthetics",
    "uses_coordinate_system",
    "uses_data",
    "uses_extra_mappings",
    "uses_geom_param",
    "uses_geom_params",
    "uses_geoms",
    "uses_labels",
    "uses_mappings",
    "uses_stat_param",
    "uses_stats"
  ],
  "_help": [
    {
      "page": "default_label",
      "title": "Placeholders for default values",
      "topics": [
        "default_label",
        "default_param"
      ]
    },
    {
      "page": "get_coordinate_system",
      "title": "Which coordinate system does a plot use?",
      "concept": [
        "functions for checking coordinate systems"
      ],
      "topics": [
        "get_coordinate_system"
      ]
    },
    {
      "page": "get_data",
      "title": "Get the data set used by a plot or layer",
      "concept": [
        "functions for checking data"
      ],
      "topics": [
        "get_data"
      ]
    },
    {
      "page": "get_default_labels",
      "title": "What is the default label for a plot aesthetic?",
      "concept": [
        "functions for checking labels"
      ],
      "topics": [
        "get_default_labels"
      ]
    },
    {
      "page": "get_default_params",
      "title": "What are the default parameters for a plot layer?",
      "concept": [
        "functions for checking geom parameters"
      ],
      "topics": [
        "get_default_params"
      ]
    },
    {
      "page": "get_geom_layer",
      "title": "Isolate a geom layer from a plot",
      "topics": [
        "get_geom_layer"
      ]
    },
    {
      "page": "get_geoms",
      "title": "List the geoms used by a plot",
      "concept": [
        "functions for checking geoms"
      ],
      "topics": [
        "get_geoms"
      ]
    },
    {
      "page": "get_geoms_stats",
      "title": "List the geom and stat combination used by all layers of a plot.",
      "concept": [
        "functions for checking geoms"
      ],
      "topics": [
        "get_geoms_stats"
      ]
    },
    {
      "page": "get_labels",
      "title": "List the labels used by a plot",
      "concept": [
        "functions for checking labels"
      ],
      "topics": [
        "get_labels"
      ]
    },
    {
      "page": "get_mappings",
      "title": "Get aesthetic mappings from a layer or plot",
      "concept": [
        "functions for checking mappings"
      ],
      "topics": [
        "get_mappings"
      ]
    },
    {
      "page": "get_stat_layer",
      "title": "Isolate a stat layer from a plot",
      "topics": [
        "get_stat_layer"
      ]
    },
    {
      "page": "get_stats",
      "title": "List the stats used by a plot",
      "concept": [
        "functions for checking stats"
      ],
      "topics": [
        "get_stats"
      ]
    },
    {
      "page": "gradethis_equal.ggplot",
      "title": "Compare two 'ggplot's to check whether they are equal",
      "topics": [
        "gradethis_equal.ggplot"
      ]
    },
    {
      "page": "identical_aes",
      "title": "Are aesthetic mapping specifications \"identical\"?",
      "concept": [
        "functions for checking mappings"
      ],
      "topics": [
        "identical_aes"
      ]
    },
    {
      "page": "is_ggplot",
      "title": "Check if an object is a ggplot",
      "topics": [
        "fail_if_not_ggplot",
        "is_ggplot",
        "stop_if_not_ggplot"
      ]
    },
    {
      "page": "ith_data",
      "title": "Which data set does the ith layer use?",
      "concept": [
        "functions for checking data"
      ],
      "topics": [
        "ith_data"
      ]
    },
    {
      "page": "ith_data_is",
      "title": "Does the ith layer use the correct data set?",
      "concept": [
        "functions for checking data"
      ],
      "topics": [
        "ith_data_is"
      ]
    },
    {
      "page": "ith_geom",
      "title": "Which geom is used in the ith layer?",
      "concept": [
        "functions for checking geoms"
      ],
      "topics": [
        "ith_geom"
      ]
    },
    {
      "page": "ith_geom_is",
      "title": "Is the ith geom what it should be?",
      "concept": [
        "functions for checking geoms"
      ],
      "topics": [
        "ith_geom_is"
      ]
    },
    {
      "page": "ith_geom_stat",
      "title": "Which geom/stat combination is used in the ith layer?",
      "concept": [
        "functions for checking geoms"
      ],
      "topics": [
        "ith_geom_stat"
      ]
    },
    {
      "page": "ith_mappings",
      "title": "Return the aesthetic mappings used by the ith layer",
      "concept": [
        "functions for checking mappings"
      ],
      "topics": [
        "ith_mappings"
      ]
    },
    {
      "page": "ith_mappings_use",
      "title": "Does the ith layer use one or more aesthetic mappings?",
      "concept": [
        "functions for checking mappings"
      ],
      "topics": [
        "ith_mappings_use"
      ]
    },
    {
      "page": "ith_stat",
      "title": "Which stat is used in the ith layer?",
      "concept": [
        "functions for checking stats"
      ],
      "topics": [
        "ith_stat"
      ]
    },
    {
      "page": "ith_stat_is",
      "title": "Is the ith stat what it should be?",
      "concept": [
        "functions for checking stats"
      ],
      "topics": [
        "ith_stat_is"
      ]
    },
    {
      "page": "n_layers",
      "title": "How many layers are in a plot?",
      "topics": [
        "n_layers"
      ]
    },
    {
      "page": "uses_aesthetics",
      "title": "Does a plot use one or more aesthetics?",
      "topics": [
        "uses_aesthetics"
      ]
    },
    {
      "page": "uses_coordinate_system",
      "title": "Does a plot use the correct coordinate system?",
      "concept": [
        "functions for checking coordinate systems"
      ],
      "topics": [
        "uses_coordinate_system"
      ]
    },
    {
      "page": "uses_data",
      "title": "Does a plot or layer use the correct data set?",
      "concept": [
        "functions for checking data"
      ],
      "topics": [
        "uses_data"
      ]
    },
    {
      "page": "uses_extra_mappings",
      "title": "Does the plot uses extra aesthetic mappings?",
      "topics": [
        "uses_extra_mappings"
      ]
    },
    {
      "page": "uses_geom_params",
      "title": "Does a layer use one of more specific parameters?",
      "concept": [
        "functions for checking geom parameters"
      ],
      "topics": [
        "uses_geom_param",
        "uses_geom_params"
      ]
    },
    {
      "page": "uses_geoms",
      "title": "Does a plot use one or more geoms?",
      "concept": [
        "functions for checking geoms"
      ],
      "topics": [
        "uses_geoms"
      ]
    },
    {
      "page": "uses_labels",
      "title": "Does a plot use one or more labels?",
      "concept": [
        "functions for checking labels"
      ],
      "topics": [
        "uses_labels"
      ]
    },
    {
      "page": "uses_mappings",
      "title": "Does a plot or layer use one or more mappings?",
      "concept": [
        "functions for checking mappings"
      ],
      "topics": [
        "uses_mappings"
      ]
    },
    {
      "page": "uses_stat_param",
      "title": "Does a layer use a specific stat parameter?",
      "topics": [
        "uses_stat_param"
      ]
    },
    {
      "page": "uses_stats",
      "title": "Does a plot use one or more stats?",
      "concept": [
        "functions for checking stats"
      ],
      "topics": [
        "uses_stats"
      ]
    }
  ],
  "_pkglogo": "https://github.com/rstudio/ggcheck/raw/HEAD/man/figures/logo.png",
  "_readme": "https://github.com/rstudio/ggcheck/raw/HEAD/README.md",
  "_rundeps": [
    "backports",
    "base64enc",
    "bslib",
    "cachem",
    "checkmate",
    "cli",
    "commonmark",
    "cpp11",
    "crayon",
    "diffobj",
    "digest",
    "ellipsis",
    "evaluate",
    "farver",
    "fastmap",
    "fontawesome",
    "fs",
    "ggplot2",
    "glue",
    "gradethis",
    "gtable",
    "highr",
    "htmltools",
    "htmlwidgets",
    "httpuv",
    "isoband",
    "jquerylib",
    "jsonlite",
    "knitr",
    "labeling",
    "later",
    "learnr",
    "lifecycle",
    "litedown",
    "magrittr",
    "markdown",
    "memoise",
    "mime",
    "otel",
    "promises",
    "purrr",
    "R6",
    "rappdirs",
    "RColorBrewer",
    "Rcpp",
    "renv",
    "rlang",
    "rmarkdown",
    "rprojroot",
    "rstudioapi",
    "S7",
    "sass",
    "scales",
    "shiny",
    "sourcetools",
    "tinytex",
    "vctrs",
    "viridisLite",
    "waldo",
    "withr",
    "xfun",
    "xtable",
    "yaml"
  ],
  "_score": 4.936915680945254,
  "_indexed": true,
  "_nocasepkg": "ggcheck",
  "_universes": [
    "rstudio",
    "gadenbuie"
  ],
  "_binaries": [
    {
      "r": "4.7.0",
      "os": "linux",
      "version": "0.0.5",
      "date": "2026-06-22T13:59:36.000Z",
      "distro": "noble",
      "commit": "70543ad8e3e4578a37a01dce695e6829ba7cf505",
      "fileid": "https://r2.ropensci.org/fef5e396986cc659c1d85ccc9deb9e2c285cbb14d6ddfe07b871219f36593a3a",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/rstudio/actions/runs/27957898838"
    },
    {
      "r": "4.6.0",
      "os": "linux",
      "version": "0.0.5",
      "date": "2026-06-22T13:59:30.000Z",
      "distro": "noble",
      "commit": "70543ad8e3e4578a37a01dce695e6829ba7cf505",
      "fileid": "https://r2.ropensci.org/b3b93be9532e3fa026a56b49c121dbbbc1fe2a2a8cc0b207fef8e50c00bdcfd5",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/rstudio/actions/runs/27957898838"
    },
    {
      "r": "4.5.3",
      "os": "mac",
      "version": "0.0.5",
      "date": "2026-06-22T13:59:58.000Z",
      "commit": "70543ad8e3e4578a37a01dce695e6829ba7cf505",
      "fileid": "https://r2.ropensci.org/34f75be979b73adf26cdd5818bc7861a9a50a1ede5939e5c09aea64e52cdd4c4",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/rstudio/actions/runs/27957898838"
    },
    {
      "r": "4.6.0",
      "os": "mac",
      "version": "0.0.5",
      "date": "2026-06-22T14:00:17.000Z",
      "commit": "70543ad8e3e4578a37a01dce695e6829ba7cf505",
      "fileid": "https://r2.ropensci.org/add6ee6fc1a17e1ee387d3ae15553c5072086b743816964fa829eaf3c61a97ff",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/rstudio/actions/runs/27957898838"
    },
    {
      "r": "4.6.0",
      "os": "wasm",
      "version": "0.0.5",
      "date": "2026-06-22T13:59:36.000Z",
      "commit": "70543ad8e3e4578a37a01dce695e6829ba7cf505",
      "fileid": "https://r2.ropensci.org/5a145f1b0188701f95ad3fe316f195ad1c7b40479038129134248125e8d63276",
      "status": "success",
      "buildurl": "https://github.com/r-universe/rstudio/actions/runs/27957898838"
    },
    {
      "r": "4.7.0",
      "os": "win",
      "version": "0.0.5",
      "date": "2026-06-22T13:58:44.000Z",
      "commit": "70543ad8e3e4578a37a01dce695e6829ba7cf505",
      "fileid": "https://r2.ropensci.org/7352fb4c92f2c2106d21590e87f0cd4d9a2c2ff68863e0807f7b6c5d234f92da",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/rstudio/actions/runs/27957898838"
    },
    {
      "r": "4.5.3",
      "os": "win",
      "version": "0.0.5",
      "date": "2026-06-22T13:59:03.000Z",
      "commit": "70543ad8e3e4578a37a01dce695e6829ba7cf505",
      "fileid": "https://r2.ropensci.org/c71adcf05abbc75affc2ba04e73c81031a9fb72d8474065a878f9561f3ac3b0e",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/rstudio/actions/runs/27957898838"
    },
    {
      "r": "4.6.0",
      "os": "win",
      "version": "0.0.5",
      "date": "2026-06-22T13:59:13.000Z",
      "commit": "70543ad8e3e4578a37a01dce695e6829ba7cf505",
      "fileid": "https://r2.ropensci.org/06c0e02d524fa95d55a0d59ba93c535ede6546d97574a87b842d4e0269746efb",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/rstudio/actions/runs/27957898838"
    }
  ]
}