Manage R packages, lockfiles, and R versions with one tool. Works with CRAN, Bioconductor, and GitHub.
Parallel downloads, global package cache with CoW cloning, no R process for binary installs.
macOS arm64, R 4.5, P3M binaries. Median of 5 runs, index caches warm.
First-install comparison: uvr pre-resolves deps via uvr lock (separate step) and only uvr sync (install) is timed; install.packages/pak/renv resolve + install inline.
For a like-for-like lockfile-restore comparison, see pak::lockfile_install() and renv::restore().
Package resolution, lockfiles, R version management, and isolated project libraries.
Parallel downloads, native tar extraction, no R process for binary packages.
uvr.lock pins exact versions and checksums. Commit it, and everyone gets the same environment.
Each project gets its own library in .uvr/library/. No cross-project version conflicts.
Install and switch R versions with uvr r install and uvr r use. Pin per-project via .r-version.
Install from any registry. Specify GitHub packages directly in your manifest.
--frozen mode ensures CI uses exactly the locked versions. No surprises in production.
Works on macOS, Linux, and Windows. Same workflow everywhere your code runs.
One ~8 MB binary with zero dependencies. Download it and you're done.
Creates a uvr.toml manifest with your R version and empty dependency list.
Resolves dependencies, writes the lockfile, and installs everything in one step.
Installs exactly what the lockfile says. Idempotent and fast on repeat runs.
Executes R with the project library on the search path. No library() preamble needed.
How uvr compares to renv, pak, rv, rig, and pixi.
| Feature | uvr | renv | pak | rv | rig | pixi |
|---|---|---|---|---|---|---|
| Declarative manifest | ✓ | ✓† | ✓† | ✓ | — | ✓ |
| Lockfile | ✓ | ✓ | ✓ | ✓ | — | ✓ |
| R version management | ✓ | — | — | — | ✓ | ✓ |
| Run scripts in isolated env | ✓ | — | — | — | — | ✓ |
| CRAN packages | ✓ | ✓ | ✓ | ✓ | — | ✓* |
| Bioconductor packages | ✓ | ✓ | ✓ | ✓ | — | ✓* |
| GitHub packages | ✓ | ✓ | ✓ | ✓ | — | — |
| System dep detection (Linux) | ✓ | — | ✓ | — | — | ✓ |
| CI mode (--frozen) | ✓ | ✓ | — | — | — | ✓ |
| No admin rights required | ✓ | ✓ | ✓ | ✓ | — | ✓ |
| Standalone CLI (no R required) | ✓ | — | — | ✓ | ✓ | ✓ |
| Windows support | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
* Via conda-forge channel, not native CRAN/Bioconductor integration. † Via DESCRIPTION-based workflow, not a dedicated manifest format.
Single binary, no dependencies. Pick your method.
macOS and Linux — downloads the latest release
Install via your favorite AUR helper
Install via the companion R package
Build with Cargo (requires Rust toolchain)
The companion R package lets you manage your project without leaving the R console. Initialize projects, add packages, sync environments, and manage R versions — all from familiar R syntax.
View uvr-r on GitHub →