R Project Template
Reproducible by default

Spin up a clean R project
in one click.

Name it, configure it, download it. You get a best-practice project skeleton β€” numbered pipeline, config.R, renv, Quarto report, Makefile, Docker, and tests β€” zipped and ready to extract. No setup script to run.

βœ“ 100% in your browser βœ“ Nothing uploaded βœ“ data.table + tidyverse + sf ready

1 Β· Configure

Start from a preset
Identity
Type & packages
Core packages data.table is always loaded before tidyverse
Coordinate systems
Reproducibility & tooling
Extras
Custom config variables

Extra constants appended to config.R under # Custom ----.

Custom folders

Additional directories created in the project root (e.g. 04_docs/notes).

2 Β· Preview


        

        

        

        

A pipeline you can actually reproduce

Every project follows the same numbered flow β€” raw β†’ clean β†’ model β†’ visualize β†’ report.

01

Download

Pull raw data into 01_data/raw_data/ β€” never edited by hand.

β†’
02

Clean

Transform & tidy into 01_data/clean_data/.

β†’
03

Model

Analyse; save results to 03_outputs/tables/.

β†’
04

Visualize

Maps & figures to 03_outputs/figures/.

β†’
05

Report

One Quarto doc ties it all together.

🧭

here::here() paths

Robust relative paths that work no matter where a script is run from.

πŸ”’

renv lockfile

Pin every package version so collaborators get the exact same environment.

🐳

Docker option

Pin the whole OS + R version with a rocker-based image for total reproducibility.

🎲

Seeded

set.seed() wired into config so stochastic steps are deterministic.

⚑

data.table first

Loaded before tidyverse so masking order is correct and joins stay fast.

βœ…

testthat + lint

Optional test scaffold and a styler/lintr config to keep code clean.

After you download

  1. Unzip into your projects folder.
  2. Open project.Rproj in RStudio.
  3. Run renv::restore() to install pinned packages.
  4. Start with 02_scripts/01_download_data.R and work through the files in order.