framework docs
Guide

Overview

Framework auto-loads functions from a functions/ directory, allowing you to maintain a library of semantically organized utility functions that are always of available to you.

Benefits of Auto-loading

Semantic organization: Group functions by purpose (cleaning, plotting, modeling) without worrying about load order.

No boilerplate: No source() calls at the top of every script that break when you rename or reorganize your project.

Consistent environment: Every notebook and script gets the same functions via scaffold().

The Functions Directory

Put reusable functions in functions/:

my-project/
β”œβ”€β”€ functions/
β”‚   β”œβ”€β”€ data_cleaning.R
β”‚   β”œβ”€β”€ plotting.R
β”‚   └── stats_helpers.R
β”œβ”€β”€ notebooks/
└── scripts/

When you call scaffold(), all .R files in functions/ are automatically sourced. Your scripts just work:

library(framework)
scaffold()

clean_data <- my_cleaning_function(raw_data)

Configuring the Functions Directory

The default is functions/, but you can customize it in settings.yml:

directories:
  functions: R

Or use multiple directories:

directories:
  functions:
    - functions
    - helpers
    - lib

← Data Management

Templates β†’