{
  "_id": "6ad09a81576abc75bd5cd797",
  "Package": "box",
  "Title": "Write Reusable, Composable and Modular R Code",
  "Version": "1.2.3",
  "Authors@R": "c(\nperson(\n'Konrad', 'Rudolph',\nemail = 'konrad.rudolph@gmail.com',\nrole = c('aut', 'cre'),\ncomment = c(ORCID = '0000-0002-9866-7051')\n),\nperson(\n'Michael', 'Schubert',\nemail = 'mschu.dev@gmail.com',\nrole = 'ctb',\ncomment = c(ORCID = '0000-0002-6862-5221')\n)\n)",
  "URL": "https://klmr.me/box/, https://github.com/klmr/box",
  "BugReports": "https://github.com/klmr/box/issues",
  "Description": "A modern module system for R. Organise code into\nhierarchical, composable, reusable modules, and use it\neffortlessly across projects via a flexible, declarative\ndependency loading syntax.",
  "License": "MIT + file LICENSE",
  "Encoding": "UTF-8",
  "VignetteBuilder": "knitr",
  "RoxygenNote": "7.3.3",
  "Repository": "https://klmr.r-universe.dev",
  "Date/Publication": "2026-08-16 17:05:36 UTC",
  "RemoteUrl": "https://github.com/klmr/box",
  "RemoteRef": "build",
  "RemoteSha": "a2c61e4745e06aa0c972a131a0832b3f60b059ce",
  "NeedsCompilation": "yes",
  "Packaged": {
    "Date": "2026-10-15 08:44:18 UTC",
    "User": "root"
  },
  "Author": "Konrad Rudolph [aut, cre] (ORCID:\n<https://orcid.org/0000-0002-9866-7051>),\nMichael Schubert [ctb] (ORCID: <https://orcid.org/0000-0002-6862-5221>)",
  "Maintainer": "Konrad Rudolph <konrad.rudolph@gmail.com>",
  "_user": "klmr",
  "_type": "src",
  "_file": "box_1.2.3.tar.gz",
  "_fileid": "https://r2.ropensci.org/69c3279a27b45c0fb2adca82ac1bb7ccfeb3e1be30521a5799754728a0a057e3",
  "_filesize": 504585,
  "_sha256": "69c3279a27b45c0fb2adca82ac1bb7ccfeb3e1be30521a5799754728a0a057e3",
  "_expires": "2027-01-23T09:18:55.000Z",
  "_created": "2026-10-15T08:44:18.000Z",
  "_published": "2026-10-15T09:18:57.040Z",
  "_buildurl": "https://github.com/r-universe/klmr/actions/runs/38707349909",
  "_status": "success",
  "_host": "GitHub-Actions",
  "_jobs": [
    {
      "job": 116331648715,
      "time": 98,
      "config": "linux-devel-arm64",
      "r": "4.7.0",
      "check": "NOTE",
      "artifact": "11959545885"
    },
    {
      "job": 116331648604,
      "time": 122,
      "config": "linux-devel-x86_64",
      "r": "4.7.0",
      "check": "NOTE",
      "artifact": "11959980213"
    },
    {
      "job": 116331648563,
      "time": 95,
      "config": "linux-release-arm64",
      "r": "4.6.1",
      "check": "NOTE",
      "artifact": "11958872559"
    },
    {
      "job": 116331648645,
      "time": 135,
      "config": "linux-release-x86_64",
      "r": "4.6.1",
      "check": "NOTE",
      "artifact": "11959705544"
    },
    {
      "job": 116331648583,
      "time": 128,
      "config": "macos-oldrel-arm64",
      "r": "4.5.3",
      "check": "NOTE",
      "artifact": "11961176144"
    },
    {
      "job": 116331648543,
      "time": 301,
      "config": "macos-oldrel-x86_64",
      "r": "4.5.3",
      "check": "NOTE",
      "artifact": "11958854768"
    },
    {
      "job": 116331648596,
      "time": 112,
      "config": "macos-release-arm64",
      "r": "4.6.1",
      "check": "NOTE",
      "artifact": "11961531071"
    },
    {
      "job": 116331648495,
      "time": 241,
      "config": "macos-release-x86_64",
      "r": "4.6.1",
      "check": "NOTE",
      "artifact": "11960100212"
    },
    {
      "job": 116330078825,
      "time": 231,
      "config": "source",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "11958907219"
    },
    {
      "job": 116331648621,
      "time": 107,
      "config": "wasm-release",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "11959402724"
    },
    {
      "job": 116331648623,
      "time": 343,
      "config": "windows-devel-arm64",
      "r": "4.7.0",
      "check": "NOTE",
      "artifact": "11959696121"
    },
    {
      "job": 116331648630,
      "time": 142,
      "config": "windows-devel-x86_64",
      "r": "4.7.0",
      "check": "NOTE",
      "artifact": "11959890359"
    },
    {
      "job": 116331648738,
      "time": 140,
      "config": "windows-oldrel-x86_64",
      "r": "4.5.3",
      "check": "NOTE",
      "artifact": "11958814503"
    },
    {
      "job": 116331648597,
      "time": 358,
      "config": "windows-release-arm64",
      "r": "4.6.1",
      "check": "NOTE",
      "artifact": "11960180305"
    },
    {
      "job": 116331648550,
      "time": 91,
      "config": "windows-release-x86_64",
      "r": "4.6.1",
      "check": "NOTE",
      "artifact": "11958962096"
    }
  ],
  "_upstream": "https://github.com/klmr/box",
  "_commit": {
    "id": "a2c61e4745e06aa0c972a131a0832b3f60b059ce",
    "author": "klmr <klmr@users.noreply.github.com>",
    "committer": "klmr <klmr@users.noreply.github.com>",
    "message": "Create a development build\n",
    "time": 1786899936
  },
  "_maintainer": {
    "name": "Konrad Rudolph",
    "email": "konrad.rudolph@gmail.com",
    "login": "klmr",
    "mastodon": "@klmr@mastodon.social",
    "orcid": "0000-0002-9866-7051",
    "description": "Geneticist 🧬, computer scientist 𝝺 and software engineer 👨‍💻.",
    "uuid": 38931
  },
  "_distro": "resolute",
  "_registered": true,
  "_dependencies": [
    {
      "package": "R",
      "version": ">= 3.6.0",
      "role": "Depends"
    },
    {
      "package": "tools",
      "role": "Imports"
    },
    {
      "package": "devtools",
      "role": "Suggests"
    },
    {
      "package": "knitr",
      "version": ">= 1.40",
      "role": "Suggests"
    },
    {
      "package": "rmarkdown",
      "role": "Suggests"
    },
    {
      "package": "R6",
      "role": "Suggests"
    },
    {
      "package": "rlang",
      "role": "Suggests"
    },
    {
      "package": "roxygen2",
      "version": ">= 7.2.1",
      "role": "Suggests"
    },
    {
      "package": "shiny",
      "role": "Suggests"
    },
    {
      "package": "stringr",
      "role": "Suggests"
    },
    {
      "package": "testthat",
      "version": ">= 3.1.7",
      "role": "Suggests"
    },
    {
      "package": "rstudioapi",
      "role": "Enhances"
    }
  ],
  "_owner": "klmr",
  "_selfowned": true,
  "_usedby": 5,
  "_updates": [
    {
      "week": "2025-46",
      "n": 3
    },
    {
      "week": "2025-48",
      "n": 1
    },
    {
      "week": "2026-14",
      "n": 1
    },
    {
      "week": "2026-15",
      "n": 2
    },
    {
      "week": "2026-16",
      "n": 1
    },
    {
      "week": "2026-18",
      "n": 7
    },
    {
      "week": "2026-19",
      "n": 3
    },
    {
      "week": "2026-22",
      "n": 2
    },
    {
      "week": "2026-33",
      "n": 4
    }
  ],
  "_tags": [
    {
      "name": "v1.2.1",
      "date": "2025-11-24"
    },
    {
      "name": "v1.2.2",
      "date": "2026-04-08"
    },
    {
      "name": "v1.2.3",
      "date": "2026-08-16"
    }
  ],
  "_topics": [
    "modules",
    "packages"
  ],
  "_stars": 982,
  "_contributors": [
    {
      "user": "klmr",
      "count": 1197,
      "uuid": 38931
    },
    {
      "user": "mschubert",
      "count": 10,
      "uuid": 442360
    },
    {
      "user": "jimhester",
      "count": 1,
      "uuid": 205275
    },
    {
      "user": "kamilzyla",
      "count": 1,
      "uuid": 10000651
    },
    {
      "user": "prdm0",
      "count": 1,
      "uuid": 4948384
    },
    {
      "user": "tommarshall2",
      "count": 1,
      "uuid": 91833656
    }
  ],
  "_userbio": {
    "uuid": 38931,
    "type": "user",
    "name": "Konrad Rudolph",
    "followers": 513,
    "description": "Geneticist 🧬, computer scientist 𝝺 and software engineer 👨‍💻."
  },
  "_downloads": {
    "count": 11532,
    "source": "https://cranlogs.r-pkg.org/downloads/total/last-month/box"
  },
  "_mentions": 15,
  "_devurl": "https://github.com/klmr/box",
  "_pkgdown": "https://klmr.me/box/",
  "_searchresults": 81,
  "_rbuild": "4.6.1",
  "_assets": [
    "extra/box.html",
    "extra/citation.cff",
    "extra/citation.html",
    "extra/citation.json",
    "extra/citation.txt",
    "extra/contents.json",
    "extra/manual.pdf",
    "extra/NEWS.html",
    "extra/NEWS.txt",
    "extra/readme.html",
    "extra/readme.md",
    "LICENSE"
  ],
  "_homeurl": "https://github.com/klmr/box",
  "_realowner": "klmr",
  "_cranurl": true,
  "_releases": [
    {
      "version": "1.0.0",
      "date": "2021-02-12"
    },
    {
      "version": "1.0.1",
      "date": "2021-03-20"
    },
    {
      "version": "1.0.2",
      "date": "2021-04-22"
    },
    {
      "version": "1.1.0",
      "date": "2021-09-13"
    },
    {
      "version": "1.1.1",
      "date": "2022-04-23"
    },
    {
      "version": "1.1.2",
      "date": "2022-05-11"
    },
    {
      "version": "1.1.3",
      "date": "2023-05-02"
    },
    {
      "version": "1.2.0",
      "date": "2024-02-07"
    },
    {
      "version": "1.2.1",
      "date": "2025-11-28"
    },
    {
      "version": "1.2.2",
      "date": "2026-04-10"
    },
    {
      "version": "1.2.3",
      "date": "2026-08-20"
    }
  ],
  "_exports": [
    "export",
    "file",
    "help",
    "name",
    "purge_cache",
    "register_S3_method",
    "reload",
    "script_path",
    "set_script_path",
    "topenv",
    "unload",
    "use"
  ],
  "_help": [
    {
      "page": "export",
      "title": "Explicitly declare module exports",
      "topics": [
        "export"
      ]
    },
    {
      "page": "file",
      "title": "Find the full paths of files in modules",
      "topics": [
        "file"
      ]
    },
    {
      "page": "help",
      "title": "Display module documentation",
      "topics": [
        "help"
      ]
    },
    {
      "page": "mod-hooks",
      "title": "Hooks for module events",
      "concept": [
        "experimental"
      ],
      "topics": [
        ".on_load",
        ".on_unload",
        "mod-hooks"
      ]
    },
    {
      "page": "name",
      "title": "Get a module’s name",
      "topics": [
        "name"
      ]
    },
    {
      "page": "register_S3_method",
      "title": "Register S3 methods",
      "topics": [
        "register_S3_method"
      ]
    },
    {
      "page": "script_path",
      "title": "Set the base path of the script",
      "topics": [
        "script_path",
        "set_script_path"
      ]
    },
    {
      "page": "topenv",
      "title": "Get a module’s namespace environment",
      "topics": [
        "topenv"
      ]
    },
    {
      "page": "unload",
      "title": "Unload or reload modules",
      "topics": [
        "purge_cache",
        "reload",
        "unload"
      ]
    },
    {
      "page": "use",
      "title": "Import a module or package",
      "topics": [
        "use"
      ]
    }
  ],
  "_pkglogo": "https://github.com/klmr/box/raw/build/man/figures/logo.png",
  "_readme": "https://github.com/klmr/box/raw/build/README.md",
  "_rundeps": [],
  "_vignettes": [
    {
      "source": "contributing.rmd",
      "filename": "contributing.html",
      "title": "Contributing to ‘box’",
      "author": "Konrad Rudolph",
      "engine": "knitr::rmarkdown",
      "headings": [
        "Installation",
        "Development",
        "Building",
        "Branches",
        "Attribution and copyright",
        "Code style"
      ],
      "created": "2023-10-22 21:13:30",
      "modified": "2026-05-03 15:20:12",
      "commits": 2
    },
    {
      "source": "faq.rmd",
      "filename": "faq.html",
      "title": "Frequently asked questions",
      "author": "Konrad Rudolph",
      "engine": "knitr::rmarkdown",
      "headings": [
        "General",
        "Can I call library/require/source inside a module?",
        "Can I use “meta packages” like ‘tidyverse’ with ‘box’?",
        "How to organise globally installed modules?",
        "Common error messages",
        "“object 'X' not found” inside a module",
        "“there is no package called ‘X’” when running box::use(X), even though the module 'X' exists"
      ],
      "created": "2021-05-19 22:18:56",
      "modified": "2025-11-16 12:58:23",
      "commits": 12
    },
    {
      "source": "box.rmd",
      "filename": "box.html",
      "title": "Get started",
      "author": "Konrad Rudolph",
      "engine": "knitr::rmarkdown",
      "headings": [
        "Using modules",
        "Attaching modules",
        "Writing modules",
        "Nesting modules",
        "Code execution on loading",
        "Module helper functions"
      ],
      "created": "2021-01-24 00:43:02",
      "modified": "2025-11-24 23:56:07",
      "commits": 17
    },
    {
      "source": "migration.rmd",
      "filename": "migration.html",
      "title": "Migration guide",
      "author": "Konrad Rudolph",
      "engine": "knitr::rmarkdown",
      "headings": [
        "‘modules’ “v1.0” == ‘box’",
        "Importing modules and packages",
        "General syntax",
        "Attaching names",
        "Loading documentation",
        "Executing code during module loading",
        "Changed options",
        "Changed function names",
        "Exporting names from modules",
        "Accessing default packages",
        "Loading parents of nested modules",
        "Displaying documentation",
        "Cyclic imports"
      ],
      "created": "2021-01-24 23:18:03",
      "modified": "2026-04-14 21:02:14",
      "commits": 9
    },
    {
      "source": "mod-envs.rmd",
      "filename": "mod-envs.html",
      "title": "Module environments",
      "author": "Konrad Rudolph",
      "engine": "knitr::rmarkdown",
      "headings": [
        "Preliminaries",
        "An example",
        "c.r",
        "b.r",
        "a.r",
        "Environments",
        "Module namespace",
        "Module imports environment",
        "Module export environment",
        "Importing into other environments"
      ],
      "created": "2025-11-16 12:58:23",
      "modified": "2025-11-16 12:58:23",
      "commits": 1
    },
    {
      "source": "related.rmd",
      "filename": "related.html",
      "title": "Similar packages",
      "author": "Konrad Rudolph",
      "engine": "knitr::rmarkdown",
      "headings": [
        "Tools for writing modular code",
        "Tools for loading code",
        "Tools for organising code"
      ],
      "created": "2021-07-28 22:06:08",
      "modified": "2024-02-06 23:05:19",
      "commits": 7
    },
    {
      "source": "testing.rmd",
      "filename": "testing.html",
      "title": "Testing modules",
      "author": "Konrad Rudolph",
      "engine": "knitr::rmarkdown",
      "headings": [
        "Testing is crucial",
        "Support for existing testing frameworks",
        "A note on RStudio and other IDEs",
        "Test interfaces, not implementation details"
      ],
      "created": "2021-03-15 09:10:43",
      "modified": "2022-08-28 15:18:24",
      "commits": 6
    },
    {
      "source": "compiled-code.rmd",
      "filename": "compiled-code.html",
      "title": "Using compiled code",
      "author": "Konrad Rudolph",
      "engine": "knitr::rmarkdown",
      "headings": [
        "Current status",
        "Example",
        "Compile code",
        "Loading compiled code",
        "Interacting with compiled code"
      ],
      "created": "2021-01-24 00:43:02",
      "modified": "2022-08-28 15:18:24",
      "commits": 7
    }
  ],
  "_score": 13.393864904540756,
  "_indexed": true,
  "_nocasepkg": "box",
  "_universes": [
    "klmr"
  ],
  "_binaries": [
    {
      "r": "4.7.0",
      "os": "linux",
      "version": "1.2.3",
      "date": "2026-10-15T08:46:10.000Z",
      "distro": "resolute",
      "arch": "aarch64",
      "commit": "a2c61e4745e06aa0c972a131a0832b3f60b059ce",
      "fileid": "https://r2.ropensci.org/4f2b8396005dfe20d665c74e28cde4f1d16f9d89df368488f1f067d4bedb260a",
      "status": "success",
      "check": "NOTE",
      "buildurl": "https://github.com/r-universe/klmr/actions/runs/38707349909"
    },
    {
      "r": "4.7.0",
      "os": "linux",
      "version": "1.2.3",
      "date": "2026-10-15T08:46:34.000Z",
      "distro": "resolute",
      "arch": "x86_64",
      "commit": "a2c61e4745e06aa0c972a131a0832b3f60b059ce",
      "fileid": "https://r2.ropensci.org/231d474289659d334ec85c7ba6e7db1c556760f63b8fc8e05063fb8db37a8e42",
      "status": "success",
      "check": "NOTE",
      "buildurl": "https://github.com/r-universe/klmr/actions/runs/38707349909"
    },
    {
      "r": "4.6.1",
      "os": "linux",
      "version": "1.2.3",
      "date": "2026-10-15T08:46:11.000Z",
      "distro": "resolute",
      "arch": "aarch64",
      "commit": "a2c61e4745e06aa0c972a131a0832b3f60b059ce",
      "fileid": "https://r2.ropensci.org/673e8403a02cd92bcec0c9df8ec37d252f12c24479c594b574e34f3e2cd970de",
      "status": "success",
      "check": "NOTE",
      "buildurl": "https://github.com/r-universe/klmr/actions/runs/38707349909"
    },
    {
      "r": "4.6.1",
      "os": "linux",
      "version": "1.2.3",
      "date": "2026-10-15T08:46:39.000Z",
      "distro": "resolute",
      "arch": "x86_64",
      "commit": "a2c61e4745e06aa0c972a131a0832b3f60b059ce",
      "fileid": "https://r2.ropensci.org/a106e4ef711e1073c6d72fdc671e61e3160111ef59844bae758c40b9fde1ebed",
      "status": "success",
      "check": "NOTE",
      "buildurl": "https://github.com/r-universe/klmr/actions/runs/38707349909"
    },
    {
      "r": "4.5.3",
      "os": "mac",
      "version": "1.2.3",
      "date": "2026-10-15T09:15:50.000Z",
      "arch": "aarch64",
      "commit": "a2c61e4745e06aa0c972a131a0832b3f60b059ce",
      "fileid": "https://r2.ropensci.org/c7cdeffdaae5b9168d5e90c49dceb9d28e9e01ebc580c3249e1e8b5727363526",
      "status": "success",
      "check": "NOTE",
      "buildurl": "https://github.com/r-universe/klmr/actions/runs/38707349909"
    },
    {
      "r": "4.5.3",
      "os": "mac",
      "version": "1.2.3",
      "date": "2026-10-15T08:49:07.000Z",
      "arch": "x86_64",
      "commit": "a2c61e4745e06aa0c972a131a0832b3f60b059ce",
      "fileid": "https://r2.ropensci.org/e677ed7655701e8bdd7b12bc9b09a6a9839ae7ba4ff906846719130a5eacbafe",
      "status": "success",
      "check": "NOTE",
      "buildurl": "https://github.com/r-universe/klmr/actions/runs/38707349909"
    },
    {
      "r": "4.6.1",
      "os": "mac",
      "version": "1.2.3",
      "date": "2026-10-15T09:18:18.000Z",
      "arch": "aarch64",
      "commit": "a2c61e4745e06aa0c972a131a0832b3f60b059ce",
      "fileid": "https://r2.ropensci.org/edf4e97f5f488d78e52d86d79731534434821ea3c3ed713d4a64fb854defb88a",
      "status": "success",
      "check": "NOTE",
      "buildurl": "https://github.com/r-universe/klmr/actions/runs/38707349909"
    },
    {
      "r": "4.6.1",
      "os": "mac",
      "version": "1.2.3",
      "date": "2026-10-15T08:48:14.000Z",
      "arch": "x86_64",
      "commit": "a2c61e4745e06aa0c972a131a0832b3f60b059ce",
      "fileid": "https://r2.ropensci.org/b3d714201c9f08f23da6bec3ce31cab63fa4112c0126dfb48b4b3fe49a2670bb",
      "status": "success",
      "check": "NOTE",
      "buildurl": "https://github.com/r-universe/klmr/actions/runs/38707349909"
    },
    {
      "r": "4.6.0",
      "os": "wasm",
      "version": "1.2.3",
      "date": "2026-10-15T08:46:32.000Z",
      "arch": "emscripten",
      "commit": "a2c61e4745e06aa0c972a131a0832b3f60b059ce",
      "fileid": "https://r2.ropensci.org/b436d23fda2353f8bedbd9900ae873c80d1fd67ce3d3a83992c7ba34d475d275",
      "status": "success",
      "buildurl": "https://github.com/r-universe/klmr/actions/runs/38707349909"
    },
    {
      "r": "4.7.0",
      "os": "win",
      "version": "1.2.3",
      "date": "2026-10-15T08:49:22.000Z",
      "arch": "aarch64",
      "commit": "a2c61e4745e06aa0c972a131a0832b3f60b059ce",
      "fileid": "https://r2.ropensci.org/a6da178f56d6cbd687aeb3548e14e157e2ad574d2b1ad30543493d53654bc7ec",
      "status": "success",
      "check": "NOTE",
      "buildurl": "https://github.com/r-universe/klmr/actions/runs/38707349909"
    },
    {
      "r": "4.7.0",
      "os": "win",
      "version": "1.2.3",
      "date": "2026-10-15T08:45:44.000Z",
      "arch": "x86_64",
      "commit": "a2c61e4745e06aa0c972a131a0832b3f60b059ce",
      "fileid": "https://r2.ropensci.org/6199ed79a5d477843f88719dd9acac08dae7f999bd2ae356873c7cc5a2c6aa49",
      "status": "success",
      "check": "NOTE",
      "buildurl": "https://github.com/r-universe/klmr/actions/runs/38707349909"
    },
    {
      "r": "4.5.3",
      "os": "win",
      "version": "1.2.3",
      "date": "2026-10-15T08:46:19.000Z",
      "arch": "x86_64",
      "commit": "a2c61e4745e06aa0c972a131a0832b3f60b059ce",
      "fileid": "https://r2.ropensci.org/f14c5c8a1c219651ab1a968ec897419f7e432e81b7497d4bb5302416f96dc124",
      "status": "success",
      "check": "NOTE",
      "buildurl": "https://github.com/r-universe/klmr/actions/runs/38707349909"
    },
    {
      "r": "4.6.1",
      "os": "win",
      "version": "1.2.3",
      "date": "2026-10-15T08:49:47.000Z",
      "arch": "aarch64",
      "commit": "a2c61e4745e06aa0c972a131a0832b3f60b059ce",
      "fileid": "https://r2.ropensci.org/42dad04f7dd6410dbb7ff3b1a37f2368e9a3c82018332c4b07a20fa4d3af65a4",
      "status": "success",
      "check": "NOTE",
      "buildurl": "https://github.com/r-universe/klmr/actions/runs/38707349909"
    },
    {
      "r": "4.6.1",
      "os": "win",
      "version": "1.2.3",
      "date": "2026-10-15T08:45:44.000Z",
      "arch": "x86_64",
      "commit": "a2c61e4745e06aa0c972a131a0832b3f60b059ce",
      "fileid": "https://r2.ropensci.org/bd0e1967a035ed68d2fbc7bb7b3afad89e0ae9d6d7015c99534c6292ef174db9",
      "status": "success",
      "check": "NOTE",
      "buildurl": "https://github.com/r-universe/klmr/actions/runs/38707349909"
    }
  ]
}