Learn R Programming

strata

The goal of strata is to provide a framework for workflow automation and reproducible analyses for R users and teams who may not have access to many modern automation tooling and/or are otherwise resource-constrained. Strata aims to be simple and allow users to adopt it with minimal changes to existing code and use whatever automation they have access to. There is only one target file users will need to automate, main.R, which will run through the entire project with the settings they specified as they build their strata of code. Strata is designed to get out of the users’ way and play nice with packages like renv, cronR, and taskscheduleR.

⚙️ Installation

To install the latest CRAN release, just run:

install.packages("strata")

You can install the development version of strata from GitHub with:

# install.packages("pak")
pak::pak("asenetcky/strata")

✨ Features

  • Easily turn your R project into an automated one OR a one-click affair
  • Easily view your project’s execution plan - no more hunting and pecking around to find out which script sources the next
  • No more juggling multiple automated tasks - there is only a single automation target - main.R or main() function
  • Simple and consistent built-in logging
  • Manage code execution in .toml files
  • Quick build options for rapid prototyping

Copy Link

Version

Install

install.packages('strata')

Monthly Downloads

583

Version

1.4.3

License

MIT + file LICENSE

Issues

Pull Requests

Stars

Forks

Maintainer

Alexander Senetcky

Last Published

April 3rd, 2025

Functions in strata (1.4.3)

adhoc_stratum

Execute a single stratum ad hoc
log_error

Wrapper around log_message for ERROR messages in the log
build_quick_strata_project

Quickly build strata project with minimal input and standard names
build_outlined_strata_project

Build a strata project from an outline dataframe
edit_toml

Edit a toml file by providing a dataframe replacement
adhoc

Execute a single stratum or lamina ad hoc by its name
log_message

Send a standardized log message to stdout or stderr
build_stratum

Add a stratum to the project space
adhoc_lamina

Execute a single lamina ad hoc
build_lamina

Add a lamina to the project space
survey_log

Return the log contents of a strata log file as a tibble
view_toml

View the contents of a toml file as a dataframe
survey_strata

Survey the layout and execution order of a strata project
strata-package

strata: Simple Framework for Simple Automation
main

Execute entire strata project
survey_tomls

Find all the strata-based toml files in a strata project
log_total_time

Print time difference in a standard message for logging purposes