Learn R Programming

⚠️There's a newer version (1.1.7) of this package.Take me there.

renv

Overview

The renv package helps you create reproducible environments for your R projects. Use renv to make your R projects more:

Isolated: Installing a new or updated package for one project won't break your other projects, and vice versa. That's because packrat gives each project its own private package library.

Portable: Easily transport your projects from one computer to another, even across different platforms. Packrat makes it easy to install the packages your project depends on.

Reproducible: renv records the exact package versions you depend on, and ensures those exact versions are the ones that get installed wherever you go.

See the project page for more information.

Installation

Install the latest development version of renv with:

if (!requireNamespace("remotes"))
  install.packages("remotes")

remotes::install_github("rstudio/renv")

Workflow

Use renv::init() to initialize renv with a new or existing project. This will set up your project with a private library, and also make sure to install all of the packages you're using into that library. The packages used in your project will be recorded into a lockfile, called renv.lock.

As you work in your project, you may need to install or upgrade different packages. As these packages are installed, renv will automatically write renv.lock for you. The renv.lock lockfile records the state of your project's private library, and can be used to restore the state of that library as required.

Later, if you need to port your project to a new machine, you can call renv::restore() to reinstall all of the packages as declared in the lockfile.

Copy Link

Version

Install

install.packages('renv')

Monthly Downloads

333,644

Version

0.5.0-92

License

MIT + file LICENSE

Issues

Pull Requests

Stars

Forks

Maintainer

Kevin Ushey

Last Published

January 27th, 2026

Functions in renv (0.5.0-92)

init

Initialize a Project
hydrate

Hydrate a Project
history

View Lockfile History
equip

Install Required System Libraries
dependencies

Find R Package Dependencies in a Project
lockfile

Lockfiles
deactivate

Deactivate a Project
load

Load a Project
purge

Purge Packages from the Cache
refresh

Refresh the Local Cache of Packages Available on CRAN
config

User-Level Configuration of renv
modify

Open the Lockfile for Editing
clean

Clean a Project
migrate

Migrate a Project from Packrat to renv
install

Install Packages
snapshot

Snapshot a Project
settings

Project Settings
activate

Activate a Project
bootstrap

Bootstrap an renv Installation
paths

Path Customization
use_python

Use Python
remove

Remove Packages
isolate

Isolate a Project
renv-package

Project-local Environments for R
revert

Revert Lockfile
restore

Restore a Project
status

Status
upgrade

Upgrade renv
project

Retrieve the Active Project