{
  "_id": "6aea29ff9ceaa78f2009df30",
  "Package": "inlaops",
  "Title": "Deployment, Versioning and Scoring Tools for 'inlabru' Models",
  "Version": "0.1.2",
  "Authors@R": "c(\nperson(\"Novica\", \"Nakov\", , \"nnovica@gmail.com\", role = c(\"aut\", \"cre\", \"cph\"),\ncomment = c(ORCID = \"0009-0005-7773-7718\"))\n)",
  "Description": "Serves Bayesian spatial and latent Gaussian models fit\nwith 'inlabru' as versioned Representational State Transfer\n(REST) application programming interfaces (APIs). Includes a\n'vetiver' bridge (versioning, REST API serving with posterior\nuncertainty, 'Docker' packaging) for 'bru' objects, a 'parsnip'\nmodel constructor scoped to fixed-effects models, and\npredictive scoring helpers (continuous ranked probability, log,\nsquared-error and Dawid-Sebastiani scores) computed from\ninlabru::generate() posterior samples via 'scoringRules'.",
  "License": "GPL (>= 3)",
  "URL": "https://github.com/novica/inlaops,\nhttps://novica.github.io/inlaops/",
  "BugReports": "https://github.com/novica/inlaops/issues",
  "Additional_repositories": "https://inla.r-inla-download.org/R/stable",
  "Encoding": "UTF-8",
  "VignetteBuilder": "quarto",
  "Config/testthat/edition": "3",
  "Config/roxygen2/version": "8.1.0",
  "NeedsCompilation": "no",
  "Packaged": {
    "Date": "2026-11-03 18:33:40 UTC",
    "User": "root"
  },
  "Author": "Novica Nakov [aut, cre, cph] (ORCID:\n<https://orcid.org/0009-0005-7773-7718>)",
  "Maintainer": "Novica Nakov <nnovica@gmail.com>",
  "Repository": "https://cran.r-universe.dev",
  "Date/Publication": "2026-11-03 15:22:08 UTC",
  "RemoteUrl": "https://github.com/cran/inlaops",
  "RemoteRef": "HEAD",
  "RemoteSha": "560575741626b9934ee595a677165abe063b33ae",
  "_user": "cran",
  "_type": "src",
  "_file": "inlaops_0.1.2.tar.gz",
  "_fileid": "https://r2.ropensci.org/5a58267432dce74d672d95ba300c128f8af73ff40cc74f90c662181ce8053f64",
  "_filesize": 212776,
  "_sha256": "5a58267432dce74d672d95ba300c128f8af73ff40cc74f90c662181ce8053f64",
  "_expires": "2027-02-11T18:37:50.000Z",
  "_created": "2026-11-03T18:33:40.000Z",
  "_published": "2026-11-03T18:37:51.940Z",
  "_upstream": "https://github.com/cran/inlaops",
  "_status": "success",
  "_maintainer": {
    "name": "Novica Nakov",
    "email": "nnovica@gmail.com",
    "login": "novica",
    "bluesky": "@novica.bsky.social",
    "orcid": "0009-0005-7773-7718",
    "description": "",
    "uuid": 165724
  },
  "_jobs": [
    {
      "job": 126123297249,
      "time": 168,
      "config": "linux-devel-x86_64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "13260761766"
    },
    {
      "job": 126123297271,
      "time": 188,
      "config": "linux-release-x86_64",
      "r": "4.6.2",
      "check": "OK",
      "artifact": "13260722215"
    },
    {
      "job": 126120435814,
      "time": 307,
      "config": "source",
      "r": "4.6.2",
      "check": "OK",
      "artifact": "13258103501"
    },
    {
      "job": 126123297014,
      "time": 166,
      "config": "wasm-release",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "13260707082"
    },
    {
      "job": 126123297067,
      "time": 155,
      "config": "windows-devel-x86_64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "13260522387"
    },
    {
      "job": 126123297051,
      "time": 205,
      "config": "windows-release-x86_64",
      "r": "4.6.2",
      "check": "OK",
      "artifact": "13262440156"
    }
  ],
  "_buildurl": "https://github.com/r-universe/cran/actions/runs/41694158918",
  "_commit": {
    "id": "560575741626b9934ee595a677165abe063b33ae",
    "author": "Novica Nakov <nnovica@gmail.com>",
    "committer": "cran-robot <csardi.gabor+cran@gmail.com>",
    "message": "version 0.1.2\n",
    "time": 1793719328
  },
  "_distro": "resolute",
  "_host": "GitHub-Actions",
  "_registered": true,
  "_dependencies": [
    {
      "package": "dplyr",
      "role": "Imports"
    },
    {
      "package": "inlabru",
      "version": ">= 2.15.0",
      "role": "Imports"
    },
    {
      "package": "rlang",
      "role": "Imports"
    },
    {
      "package": "tibble",
      "role": "Imports"
    },
    {
      "package": "broom",
      "role": "Suggests"
    },
    {
      "package": "callr",
      "role": "Suggests"
    },
    {
      "package": "fmesher",
      "role": "Suggests"
    },
    {
      "package": "ggplot2",
      "role": "Suggests"
    },
    {
      "package": "hardhat",
      "role": "Suggests"
    },
    {
      "package": "httpuv",
      "role": "Suggests"
    },
    {
      "package": "httr2",
      "role": "Suggests"
    },
    {
      "package": "INLA",
      "role": "Suggests"
    },
    {
      "package": "jsonlite",
      "role": "Suggests"
    },
    {
      "package": "knitr",
      "role": "Suggests"
    },
    {
      "package": "parsnip",
      "role": "Suggests"
    },
    {
      "package": "pins",
      "role": "Suggests"
    },
    {
      "package": "plumber",
      "role": "Suggests"
    },
    {
      "package": "purrr",
      "role": "Suggests"
    },
    {
      "package": "recipes",
      "role": "Suggests"
    },
    {
      "package": "rsample",
      "role": "Suggests"
    },
    {
      "package": "scoringRules",
      "role": "Suggests"
    },
    {
      "package": "sf",
      "role": "Suggests"
    },
    {
      "package": "sn",
      "role": "Suggests"
    },
    {
      "package": "testthat",
      "version": ">= 3.0.0",
      "role": "Suggests"
    },
    {
      "package": "vetiver",
      "role": "Suggests"
    },
    {
      "package": "yardstick",
      "role": "Suggests"
    },
    {
      "package": "quarto",
      "role": "Suggests"
    },
    {
      "package": "sp",
      "role": "Enhances"
    }
  ],
  "_owner": "cran",
  "_selfowned": false,
  "_usedby": 0,
  "_updates": [
    {
      "week": "2026-45",
      "n": 1
    }
  ],
  "_tags": [
    {
      "name": "0.1.2",
      "date": "2026-11-03"
    }
  ],
  "_stars": 0,
  "_contributors": [
    {
      "user": "novica",
      "count": 1,
      "uuid": 165724
    }
  ],
  "_userbio": {
    "uuid": 6899542,
    "type": "organization",
    "name": "cran",
    "followers": 635,
    "description": "Unofficial read-only mirror of all CRAN R packages"
  },
  "_downloads": {
    "count": 0,
    "source": "https://cranlogs.r-pkg.org/downloads/total/last-month/inlaops"
  },
  "_devurl": "https://github.com/novica/inlaops",
  "_pkgdown": "https://novica.github.io/inlaops/",
  "_searchresults": 0,
  "_quarto": true,
  "_topics": [
    "quarto"
  ],
  "_rbuild": "4.6.2",
  "_assets": [
    "extra/citation.cff",
    "extra/citation.html",
    "extra/citation.json",
    "extra/citation.txt",
    "extra/contents.json",
    "extra/inlaops.html",
    "extra/manual.pdf",
    "extra/NEWS.html",
    "extra/NEWS.txt",
    "extra/readme.html",
    "extra/readme.md"
  ],
  "_cranurl": false,
  "_releases": [
    {
      "version": "0.1.2",
      "date": "2026-11-03"
    }
  ],
  "_exports": [
    "bru_cv_predict",
    "bru_inlaops_fit",
    "bru_pred_formula",
    "bru_predict_conf_int",
    "bru_reg",
    "bru_score"
  ],
  "_help": [
    {
      "page": "bru_cv_predict",
      "title": "Cross-validation predictions for fixed-effects inlabru models",
      "topics": [
        "bru_cv_predict"
      ]
    },
    {
      "page": "bru_reg",
      "title": "parsnip model constructor for inlabru fixed-effects models",
      "topics": [
        "bru_reg"
      ]
    },
    {
      "page": "bru_score",
      "title": "Predictive scores for inlabru models",
      "topics": [
        "bru_score"
      ]
    }
  ],
  "_pkglogo": "https://github.com/cran/inlaops/raw/HEAD/man/figures/logo.svg",
  "_readme": "https://github.com/cran/inlaops/raw/HEAD/README.md",
  "_rundeps": [
    "class",
    "classInt",
    "cli",
    "DBI",
    "dplyr",
    "e1071",
    "fmesher",
    "generics",
    "glue",
    "inlabru",
    "KernSmooth",
    "lattice",
    "lifecycle",
    "magrittr",
    "Matrix",
    "MatrixModels",
    "pillar",
    "pkgconfig",
    "proxy",
    "R6",
    "Rcpp",
    "rlang",
    "s2",
    "sf",
    "sp",
    "splancs",
    "tibble",
    "tidyselect",
    "units",
    "utf8",
    "vctrs",
    "withr",
    "wk"
  ],
  "_vignettes": [
    {
      "source": "workflow.qmd",
      "filename": "workflow.html",
      "title": "How inlaops maps to the vetiver workflow",
      "engine": "quarto::html",
      "headings": [
        "Step by step",
        "In short"
      ],
      "created": "2026-11-03 15:22:08",
      "modified": "2026-11-03 15:22:08",
      "commits": 1
    },
    {
      "source": "glm.qmd",
      "filename": "glm.html",
      "title": "inlabru as a Bayesian GLM with parsnip",
      "engine": "quarto::html",
      "headings": [
        "Scope",
        "Setup",
        "Example: Poisson regression for count data",
        "Fit with bru_reg()",
        "Inspect with broom",
        "Predict",
        "Comparing against a frequentist baseline",
        "Cross-validation with bru_cv_predict()",
        "Connecting to vetiver"
      ],
      "created": "2026-11-03 15:22:08",
      "modified": "2026-11-03 15:22:08",
      "commits": 1
    },
    {
      "source": "versioning.qmd",
      "filename": "versioning.html",
      "title": "Model versioning and MLOps workflows",
      "engine": "quarto::html",
      "headings": [
        "Setup",
        "1. Baseline model — version 1",
        "2. New data, new version",
        "3. Compare versions before promoting",
        "4. Promote the better version",
        "5. Roll back",
        "6. Longitudinal quality tracking",
        "7. Serving the production model",
        "8. Real production boards",
        "Posit Connect",
        "S3 (or any object store)",
        "Auth in serving code",
        "A note on board hygiene",
        "Versioning checklist"
      ],
      "created": "2026-11-03 15:22:08",
      "modified": "2026-11-03 15:22:08",
      "commits": 1
    },
    {
      "source": "docker.qmd",
      "filename": "docker.html",
      "title": "Packaging an inlabru model API in a container",
      "engine": "quarto::html",
      "headings": [
        "Why not vetiver_prepare_docker()?",
        "1. Write plumber.R",
        "2. Write the Dockerfile",
        "3. Build and test locally",
        "4. Spatial models",
        "5. Image size"
      ],
      "created": "2026-11-03 15:22:08",
      "modified": "2026-11-03 15:22:08",
      "commits": 1
    },
    {
      "source": "scoring.qmd",
      "filename": "scoring.html",
      "title": "Proper scoring rules for Bayesian model comparison",
      "engine": "quarto::html",
      "headings": [
        "Setup",
        "The four scores",
        "Example: comparing two models",
        "Visualising score distributions",
        "Relationship to WAIC and DIC",
        "Scoring spatial and non-Gaussian models",
        "Notes on n_samples"
      ],
      "created": "2026-11-03 15:22:08",
      "modified": "2026-11-03 15:22:08",
      "commits": 1
    },
    {
      "source": "connect.qmd",
      "filename": "connect.html",
      "title": "Serving an inlabru model on Posit Connect",
      "engine": "quarto::html",
      "headings": [
        "1. Install inlaops from GitHub",
        "2. Fit and pin the model",
        "3. Write plumber.R",
        "4. Publish",
        "5. Call the API",
        "INLA on the server"
      ],
      "created": "2026-11-03 15:22:08",
      "modified": "2026-11-03 15:22:08",
      "commits": 1
    },
    {
      "source": "lgcp.qmd",
      "filename": "lgcp.html",
      "title": "Serving LGCP intensity surfaces",
      "engine": "quarto::html",
      "headings": [
        "Setup",
        "1. Fit the LGCP",
        "2. Serve via the vetiver bridge",
        "3. Fallback — custom plumber API",
        "What you keep, what you give up"
      ],
      "created": "2026-11-03 15:22:08",
      "modified": "2026-11-03 15:22:08",
      "commits": 1
    },
    {
      "source": "spatial.qmd",
      "filename": "spatial.html",
      "title": "Spatial models: scope and limitations",
      "engine": "quarto::html",
      "headings": [
        "What works",
        "vetiver bridge — supported with spatial metadata",
        "LGCP intensity surfaces",
        "Out-of-scope for the bridge (rejected at pin time)",
        "Areal lookup — planned",
        "broom tidiers — supported for the fixed part",
        "What does NOT work",
        "bru_reg() parsnip constructor",
        "bru_cv_predict() cross-validation helper",
        "Recommended workflow for spatial models",
        "Request body contract",
        "Docker image for spatial fits",
        "Multi-likelihood models"
      ],
      "created": "2026-11-03 15:22:08",
      "modified": "2026-11-03 15:22:08",
      "commits": 1
    },
    {
      "source": "vetiver.qmd",
      "filename": "vetiver.html",
      "title": "Versioning and serving inlabru models with vetiver",
      "engine": "quarto::html",
      "headings": [
        "Prerequisites",
        "1. Fit a model",
        "2. Wrap with vetiver",
        "Aside — parsnip-fitted models",
        "3. Pin to a versioned board",
        "4. Serve the API and call it",
        "5. Track model quality across versions",
        "Pins board options",
        "Multi-likelihood models"
      ],
      "created": "2026-11-03 15:22:08",
      "modified": "2026-11-03 15:22:08",
      "commits": 1
    }
  ],
  "_score": 3.6532125137753435,
  "_indexed": true,
  "_nocasepkg": "inlaops",
  "_universes": [
    "cran",
    "novica"
  ],
  "_binaries": [
    {
      "r": "4.7.0",
      "os": "linux",
      "version": "0.1.2",
      "date": "2026-11-03T18:36:25.000Z",
      "distro": "resolute",
      "commit": "560575741626b9934ee595a677165abe063b33ae",
      "fileid": "https://r2.ropensci.org/aa53deb771b9b086e564b4e21d24e2b6f71bba59d40435c556cfbdaa0675de2a",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/cran/actions/runs/41694158918"
    },
    {
      "r": "4.6.2",
      "os": "linux",
      "version": "0.1.2",
      "date": "2026-11-03T18:36:37.000Z",
      "distro": "resolute",
      "commit": "560575741626b9934ee595a677165abe063b33ae",
      "fileid": "https://r2.ropensci.org/326053ce7308c504c08a860dc338555116ab58013ba4bb41609fc8ddd53f15b3",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/cran/actions/runs/41694158918"
    },
    {
      "r": "4.6.0",
      "os": "wasm",
      "version": "0.1.2",
      "date": "2026-11-03T18:36:52.000Z",
      "commit": "560575741626b9934ee595a677165abe063b33ae",
      "fileid": "https://r2.ropensci.org/f61319ab33db4b0180c95fab986ccbbdafb92e294faeaaa6bf2012f06deef09b",
      "status": "success",
      "buildurl": "https://github.com/r-universe/cran/actions/runs/41694158918"
    },
    {
      "r": "4.7.0",
      "os": "win",
      "version": "0.1.2",
      "date": "2026-11-03T18:35:59.000Z",
      "commit": "560575741626b9934ee595a677165abe063b33ae",
      "fileid": "https://r2.ropensci.org/4dfe9ee81ef0e976b1f2f217a6bcc7447d525db9a63374c1076fe9e4342ff365",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/cran/actions/runs/41694158918"
    },
    {
      "r": "4.6.2",
      "os": "win",
      "version": "0.1.2",
      "date": "2026-11-03T18:36:36.000Z",
      "commit": "560575741626b9934ee595a677165abe063b33ae",
      "fileid": "https://r2.ropensci.org/b88ab3754fa1168507d2f224e11797a490c714a789ca49dd7c0fee138de77c95",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/cran/actions/runs/41694158918"
    }
  ]
}