The purpose of this package is to support the setup the R environment. The two main features are 'autos', to automatically source files and/or directories into your environment, and 'paths' to consistently set path objects across projects for input and output. Both are implemented using a configuration file to allow easy, custom configurations that can be used for multiple or all projects.

The envsetup package helps you manage R project environments by
providing a flexible configuration system that adapts to different
deployment stages (development, testing, production) without requiring
code changes.
When working on R projects, you often need to:
Point to different data sources across environments
Use different output directories
Load environment-specific functions
Maintain consistent code across environments like dev, qa, and prod
Instead of hardcoding paths or manually changing configurations,
envsetup uses YAML configuration files to manage these differences
automatically.
The envsetup package works with two main components:
Here’s the simplest possible _envsetup.yml configuration:
default:
paths:
data: "/path/to/your/data"
output: "/path/to/your/output"
library(envsetup)
# Load your configuration
envsetup_config <- config::get(file = "_envsetup.yml")
# Apply the configuration
rprofile(envsetup_config)
# Now you can use the configured paths
print(data) # Points to your data directory
print(output) # Points to your output directory
install.packages("envsetup")
# install.packages("devtools")
devtools::install_github("pharmaverse/envsetup")
In the following guides, you’ll learn:
How to set up basic path configurations
Managing multiple environments
Advanced path resolution
Automatic script sourcing
Real-world examples and best practices
Let’s start with basic path configuration in the next section.