{
  "_id": "6aebad372e87f76f20ad2a86",
  "Package": "qupflowR",
  "Title": "Connect R and 'Shiny' to 'QuPath' Through a Local Bridge",
  "Version": "0.0.0.9000",
  "Authors@R": "person(\"R.\", \"Heller\", email = \"raban.heller@uni-ulm.de\",\nrole = c(\"aut\", \"cre\", \"cph\"))",
  "Description": "Development version of an interface between R and the\n'QuPath' 0.7.0 platform for digital pathology image analysis.\nThe planned design lets R talk to a local 'Java' bridge (a\n'QuPath' extension and a headless worker) over an authenticated\nloopback protocol, adds a 'Shiny' app that is built on the same\nR functions, and packages analysis workflows so they can be\nshared and run again. This version contains only the package\nfoundations: classified error conditions, a message catalogue,\nprotocol JSON helpers and a JSON Schema subset validator with\nthe protocol schemas, plus a hash-pinned external-method\nexecution boundary. The bridge client, the app and the workflow\nengine are not implemented yet.",
  "License": "GPL (>= 3)",
  "URL": "https://github.com/CTTIR/qupflowR",
  "BugReports": "https://github.com/CTTIR/qupflowR/issues",
  "Additional_repositories": "https://cttir.r-universe.dev",
  "VignetteBuilder": "knitr",
  "SystemRequirements": "QuPath (0.7.0) and a Java runtime (25) for the\noptional QuPath bridge; neither is needed to install or load\nthe package.",
  "Config/Needs/website": "CTTIR/themakR",
  "Config/testthat/edition": "3",
  "Encoding": "UTF-8",
  "Language": "en-US",
  "Roxygen": "list(markdown = TRUE)",
  "Config/roxygen2/version": "8.0.0",
  "Config/pak/sysreqs": "default-jdk",
  "Repository": "https://cttir.r-universe.dev",
  "Date/Publication": "2026-11-04 18:33:55 UTC",
  "RemoteUrl": "https://github.com/CTTIR/qupflowR",
  "RemoteRef": "HEAD",
  "RemoteSha": "3d65ffc5d0d984770ddc2eba6eed781a5d01d05e",
  "NeedsCompilation": "no",
  "Packaged": {
    "Date": "2026-11-04 22:05:58 UTC",
    "User": "root"
  },
  "Author": "R. Heller [aut, cre, cph]",
  "Maintainer": "R. Heller <raban.heller@uni-ulm.de>",
  "_user": "cttir",
  "_type": "src",
  "_file": "qupflowR_0.0.0.9000.tar.gz",
  "_fileid": "https://r2.ropensci.org/866ed3c1d0f9c3ea2fb6a330b6b37f6ee204ba1271074d514de3f1b624b7f85a",
  "_filesize": 1442475,
  "_sha256": "866ed3c1d0f9c3ea2fb6a330b6b37f6ee204ba1271074d514de3f1b624b7f85a",
  "_expires": "2027-02-12T22:09:57.000Z",
  "_created": "2026-11-04T22:05:58.000Z",
  "_published": "2026-11-04T22:09:59.330Z",
  "_upstream": "https://github.com/CTTIR/qupflowR",
  "_status": "success",
  "_maintainer": {
    "name": "R. Heller",
    "email": "raban.heller@uni-ulm.de",
    "login": "r-heller",
    "description": "Doctoral researcher at Charité Universitätsmedizin Berlin, Germany. Focus on biomedical research, biostatistics, and data science.",
    "uuid": 58561665
  },
  "_jobs": [
    {
      "job": 126897414269,
      "time": 201,
      "config": "linux-devel-x86_64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "13367532872"
    },
    {
      "job": 126897414045,
      "time": 172,
      "config": "linux-release-x86_64",
      "r": "4.6.2",
      "check": "OK",
      "artifact": "13367537283"
    },
    {
      "job": 126897414001,
      "time": 134,
      "config": "macos-oldrel-arm64",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "13367428182"
    },
    {
      "job": 126897414226,
      "time": 133,
      "config": "macos-release-arm64",
      "r": "4.6.2",
      "check": "OK",
      "artifact": "13366919172"
    },
    {
      "job": 126895450358,
      "time": 218,
      "config": "source",
      "r": "4.6.2",
      "check": "OK",
      "artifact": "13368250424"
    },
    {
      "job": 126897414038,
      "time": 127,
      "config": "wasm-release",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "13365979840"
    },
    {
      "job": 126897414338,
      "time": 126,
      "config": "windows-devel-x86_64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "13368031407"
    },
    {
      "job": 126897414335,
      "time": 104,
      "config": "windows-oldrel-x86_64",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "13368210800"
    },
    {
      "job": 126897414341,
      "time": 100,
      "config": "windows-release-x86_64",
      "r": "4.6.2",
      "check": "OK",
      "artifact": "13367617582"
    }
  ],
  "_buildurl": "https://github.com/r-universe/cttir/actions/runs/41921636053",
  "_commit": {
    "id": "3d65ffc5d0d984770ddc2eba6eed781a5d01d05e",
    "author": "R. Heller <58561665+r-heller@users.noreply.github.com>",
    "committer": "R. Heller <58561665+r-heller@users.noreply.github.com>",
    "message": "Align the metadata regression test with the maintainer contact\n",
    "time": 1793817235
  },
  "_distro": "resolute",
  "_host": "GitHub-Actions",
  "_registered": true,
  "_dependencies": [
    {
      "package": "R",
      "version": ">= 4.5.0",
      "role": "Depends"
    },
    {
      "package": "cli",
      "role": "Imports"
    },
    {
      "package": "jsonlite",
      "role": "Imports"
    },
    {
      "package": "stats",
      "role": "Imports"
    },
    {
      "package": "tibble",
      "role": "Imports"
    },
    {
      "package": "utils",
      "role": "Imports"
    },
    {
      "package": "bslib",
      "role": "Suggests"
    },
    {
      "package": "callr",
      "role": "Suggests"
    },
    {
      "package": "chromote",
      "role": "Suggests"
    },
    {
      "package": "covr",
      "role": "Suggests"
    },
    {
      "package": "data.table",
      "role": "Suggests"
    },
    {
      "package": "digest",
      "role": "Suggests"
    },
    {
      "package": "DT",
      "role": "Suggests"
    },
    {
      "package": "fs",
      "role": "Suggests"
    },
    {
      "package": "htmltools",
      "role": "Suggests"
    },
    {
      "package": "htmlwidgets",
      "role": "Suggests"
    },
    {
      "package": "httr2",
      "role": "Suggests"
    },
    {
      "package": "hyperannotatR",
      "role": "Suggests"
    },
    {
      "package": "knitr",
      "role": "Suggests"
    },
    {
      "package": "lintr",
      "role": "Suggests"
    },
    {
      "package": "plotly",
      "role": "Suggests"
    },
    {
      "package": "png",
      "role": "Suggests"
    },
    {
      "package": "processx",
      "role": "Suggests"
    },
    {
      "package": "promises",
      "role": "Suggests"
    },
    {
      "package": "R6",
      "role": "Suggests"
    },
    {
      "package": "rmarkdown",
      "role": "Suggests"
    },
    {
      "package": "sf",
      "role": "Suggests"
    },
    {
      "package": "shiny",
      "role": "Suggests"
    },
    {
      "package": "shinytest2",
      "role": "Suggests"
    },
    {
      "package": "testthat",
      "version": ">= 3.0.0",
      "role": "Suggests"
    },
    {
      "package": "tiff",
      "role": "Suggests"
    },
    {
      "package": "withr",
      "role": "Suggests"
    },
    {
      "package": "zip",
      "role": "Suggests"
    }
  ],
  "_owner": "cttir",
  "_selfowned": true,
  "_usedby": 0,
  "_updates": [
    {
      "week": "2026-39",
      "n": 1
    },
    {
      "week": "2026-42",
      "n": 5
    },
    {
      "week": "2026-43",
      "n": 5
    },
    {
      "week": "2026-44",
      "n": 2
    },
    {
      "week": "2026-45",
      "n": 9
    }
  ],
  "_tags": [],
  "_stars": 0,
  "_contributors": [
    {
      "user": "r-heller",
      "count": 22,
      "uuid": 58561665
    }
  ],
  "_userbio": {
    "uuid": 275040041,
    "type": "organization",
    "name": "CTTIR",
    "followers": 11,
    "description": "Computational Trauma and Tissue Injury Research"
  },
  "_downloads": {
    "count": 0,
    "source": "https://cranlogs.r-pkg.org/downloads/total/last-month/qupflowR"
  },
  "_devurl": "https://github.com/cttir/qupflowr",
  "_searchresults": 0,
  "_rbuild": "4.6.2",
  "_assets": [
    "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/qupflowR.html",
    "extra/readme.html",
    "extra/readme.md"
  ],
  "_cranurl": false,
  "_exports": [
    "qp_abort",
    "qp_as_json",
    "qp_condition_code",
    "qp_empty_object",
    "qp_error_codes",
    "qp_error_from_response",
    "qp_json_canonical",
    "qp_json_decode",
    "qp_json_encode",
    "qp_msg",
    "qp_redact",
    "qp_run_external",
    "qp_scalar",
    "qp_schema_assert",
    "qp_schema_path",
    "qp_schema_validate",
    "qp_value_fields",
    "qp_value_from_state",
    "qp_value_state",
    "qp_warn",
    "qp_warnings_from_response"
  ],
  "_help": [
    {
      "page": "qp_abort",
      "title": "Signal a classified qupflowR error",
      "topics": [
        "qp_abort"
      ]
    },
    {
      "page": "qp_condition_code",
      "title": "Code of a qupflowR condition",
      "topics": [
        "qp_condition_code"
      ]
    },
    {
      "page": "qp_error_codes",
      "title": "Protocol error code registry",
      "topics": [
        "qp_error_codes"
      ]
    },
    {
      "page": "qp_error_from_response",
      "title": "Map a protocol error response to a classified condition",
      "topics": [
        "qp_error_from_response"
      ]
    },
    {
      "page": "qp_json_canonical",
      "title": "Canonical JSON",
      "topics": [
        "qp_json_canonical"
      ]
    },
    {
      "page": "qp_json_encode",
      "title": "Encode and decode protocol JSON",
      "topics": [
        "qp_json_decode",
        "qp_json_encode"
      ]
    },
    {
      "page": "qp_msg",
      "title": "Localised message text",
      "topics": [
        "qp_msg"
      ]
    },
    {
      "page": "qp_redact",
      "title": "Redact and bound condition details",
      "topics": [
        "qp_redact"
      ]
    },
    {
      "page": "qp_run_external",
      "title": "Run a pinned external method in an isolated process",
      "topics": [
        "qp_run_external"
      ]
    },
    {
      "page": "qp_scalar",
      "title": "Mark JSON values",
      "topics": [
        "qp_as_json",
        "qp_empty_object",
        "qp_scalar"
      ]
    },
    {
      "page": "qp_schema_assert",
      "title": "Assert that JSON matches a schema",
      "topics": [
        "qp_schema_assert"
      ]
    },
    {
      "page": "qp_schema_path",
      "title": "Locate an installed JSON Schema",
      "topics": [
        "qp_schema_path"
      ]
    },
    {
      "page": "qp_schema_validate",
      "title": "Validate JSON against a schema",
      "topics": [
        "qp_schema_validate"
      ]
    },
    {
      "page": "qp_value_state",
      "title": "Special measurement values",
      "topics": [
        "qp_value_fields",
        "qp_value_from_state",
        "qp_value_state"
      ]
    },
    {
      "page": "qp_warn",
      "title": "Signal a classified qupflowR warning",
      "topics": [
        "qp_warn"
      ]
    },
    {
      "page": "qp_warnings_from_response",
      "title": "Signal the warnings of a protocol response",
      "topics": [
        "qp_warnings_from_response"
      ]
    }
  ],
  "_pkglogo": "https://github.com/CTTIR/qupflowR/raw/HEAD/man/figures/logo.svg",
  "_readme": "https://github.com/CTTIR/qupflowR/raw/HEAD/README.md",
  "_rundeps": [
    "cli",
    "glue",
    "jsonlite",
    "lifecycle",
    "magrittr",
    "pillar",
    "pkgconfig",
    "rlang",
    "tibble",
    "utf8",
    "vctrs"
  ],
  "_vignettes": [
    {
      "source": "qupflowR.Rmd",
      "filename": "qupflowR.html",
      "title": "Getting started with qupflowR",
      "engine": "knitr::rmarkdown",
      "headings": [
        "What this version contains",
        "Errors carry stable codes",
        "Messages in German or English",
        "Optional packages",
        "JSON values and schema validation",
        "Requirements",
        "Reproduce an existing external method",
        "Further help"
      ],
      "created": "2026-09-25 14:34:47",
      "modified": "2026-11-04 13:08:55",
      "commits": 5
    }
  ],
  "_score": 3.3979400086720375,
  "_indexed": true,
  "_nocasepkg": "qupflowr",
  "_universes": [
    "cttir",
    "r-heller"
  ],
  "_binaries": [
    {
      "r": "4.7.0",
      "os": "linux",
      "version": "0.0.0.9000",
      "date": "2026-11-04T22:09:05.000Z",
      "distro": "resolute",
      "commit": "3d65ffc5d0d984770ddc2eba6eed781a5d01d05e",
      "fileid": "https://r2.ropensci.org/717e0948b68228434a0c2af853f158cb73dd7fe05dbd20313db9f2815075e997",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/cttir/actions/runs/41921636053"
    },
    {
      "r": "4.6.2",
      "os": "linux",
      "version": "0.0.0.9000",
      "date": "2026-11-04T22:08:29.000Z",
      "distro": "resolute",
      "commit": "3d65ffc5d0d984770ddc2eba6eed781a5d01d05e",
      "fileid": "https://r2.ropensci.org/553410849f792f37d992d3e9b47fcd6975d5f92f904a78367da5043aec191da4",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/cttir/actions/runs/41921636053"
    },
    {
      "r": "4.5.3",
      "os": "mac",
      "version": "0.0.0.9000",
      "date": "2026-11-04T22:08:03.000Z",
      "commit": "3d65ffc5d0d984770ddc2eba6eed781a5d01d05e",
      "fileid": "https://r2.ropensci.org/27d82372cee2bdb52136cc81484ae8c0b6cef1eb4a513cc5e61c1929550bd668",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/cttir/actions/runs/41921636053"
    },
    {
      "r": "4.6.2",
      "os": "mac",
      "version": "0.0.0.9000",
      "date": "2026-11-04T22:07:59.000Z",
      "commit": "3d65ffc5d0d984770ddc2eba6eed781a5d01d05e",
      "fileid": "https://r2.ropensci.org/86052fb1a650931faa47560617e7b8a1170a46affd88ba92633e35676a6091b0",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/cttir/actions/runs/41921636053"
    },
    {
      "r": "4.6.0",
      "os": "wasm",
      "version": "0.0.0.9000",
      "date": "2026-11-04T22:08:24.000Z",
      "commit": "3d65ffc5d0d984770ddc2eba6eed781a5d01d05e",
      "fileid": "https://r2.ropensci.org/ce0f63630b40be2c8a814b63416554422f959c28a0358c39c52a7933d8e3fde0",
      "status": "success",
      "buildurl": "https://github.com/r-universe/cttir/actions/runs/41921636053"
    },
    {
      "r": "4.7.0",
      "os": "win",
      "version": "0.0.0.9000",
      "date": "2026-11-04T22:07:24.000Z",
      "commit": "3d65ffc5d0d984770ddc2eba6eed781a5d01d05e",
      "fileid": "https://r2.ropensci.org/40a49659f9873bf6682d7c5ddf97acbde4a5188d32d9149165b43ff19d4db3da",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/cttir/actions/runs/41921636053"
    },
    {
      "r": "4.5.3",
      "os": "win",
      "version": "0.0.0.9000",
      "date": "2026-11-04T22:07:12.000Z",
      "commit": "3d65ffc5d0d984770ddc2eba6eed781a5d01d05e",
      "fileid": "https://r2.ropensci.org/658e74faccbcb6e985f3aced05e6e9ef22fc90dea70a578908d2488211bf56c2",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/cttir/actions/runs/41921636053"
    },
    {
      "r": "4.6.2",
      "os": "win",
      "version": "0.0.0.9000",
      "date": "2026-11-04T22:07:14.000Z",
      "commit": "3d65ffc5d0d984770ddc2eba6eed781a5d01d05e",
      "fileid": "https://r2.ropensci.org/e9953e3dcd32b8b2741a026c3d2ef43ddd1d1c0ac596b8b3d809fd3c0543c0af",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/cttir/actions/runs/41921636053"
    }
  ]
}