ami (“am I?”) provides a unified collection of lightweight checks that can be used to better understand the environments in which your code is running. This includes different operating systems, Continuous Integration (CI) environments, containers, and more. Similar or identical functions already exist. However, most of these functions exist within highly specialized packages, so using several of them can quickly create a lot of dependencies for your own projects.
You can install the latest released version of ami by running:
install.packages("ami")
If you’d like to try out the development version of ami, you can install directly from GitHub:
# install.packages("remotes")
remotes::install_github("briandconnelly/ami")
ami::online()
#> [1] TRUE
ami::using_rstudio()
#> [1] FALSE
ami::using_rstudio_dark_theme()
#> [1] FALSE
ami::using_macos() && ami::using_x86_cpu()
#> [1] FALSE
ami::using_docker_container()
#> [1] FALSE
ami::using_ci()
#> [1] FALSE
ami::using_github_actions()
#> [1] FALSE
ami can be used to check any environment variable. For example, we can see if we’re running in a Poetry environment:
ami::using_envvar("POETRY_ACTIVE")
#> [1] FALSE
We can also check for package options. Here, we’ll see whether boot is configured to do parallel bootstrapping using multiple cores:
ami::using_option("boot.parallel", "multicore")
#> [1] FALSE
If you’re using options as part of package development, check out the options package.