ActivePapersRecomputable research documents

Vol. 1 · Reproducible research

A paper you can re-run.

ActivePapers stores the data, the code and the figures of a study in one versioned package — so a reviewer, a colleague or you in three years can regenerate every result with one command, and see exactly where each number came from.

Figure 1. Fit of a damped oscillator to simulated measurements. Move a parameter and the figure is recomputed from source. provenance: run#a1f3 · params.json · fit.py

Package. Publish. Re-run.

  1. PackageDeclare your datasets, scripts and figures. ActivePapers records versions, hashes and the dependency graph between them.
  2. PublishExport a single archive for a repository or journal supplement, plus a human-readable manifest.
  3. Re-runAnyone with the archive regenerates every figure and table — and sees which inputs each one depends on.
$ activepapers init sea-level-2026
$ activepapers add data/tide_gauges.csv --source "PSMSL export 2026-03"
$ activepapers add analysis/trend.py --produces fig/trend.svg table/rates.csv
$ activepapers run fig/trend.svg
✓ rebuilt fig/trend.svg from 2 inputs (hashes match manifest)

What’s in the box

Provenance graph
Every figure links back to the exact data rows and code version that produced it.
Versioned datasets
Large files are content-addressed, so a changed input is detected instead of silently used.
One-command rebuilds
Regenerate one figure or the whole paper; only what changed is recomputed.
Environment capture
Language versions and package locks are recorded alongside the code.
Review mode
Reviewers can re-run analyses in a sandbox without installing anything locally.
Open format
The archive is documented and readable without our software, now and in twenty years.

Who it’s for

Research groups

Stop losing the script that made Figure 3. Onboard new students onto analyses that actually run.

Journals & reviewers

Check computational claims during review instead of trusting a methods paragraph.

Data stewards & libraries

Archive studies in a form that stays usable after the original team has moved on.

Pilot programme

We’re working with a small number of labs and journals to package real studies end-to-end. Pilot partners get hands-on help converting two or three existing papers, and a direct line into the roadmap.

Apply for the pilot

Frequently asked

Which languages are supported?

Python and R first, with any command-line tool usable as a build step.

Does it replace Git?

No. Keep your code in Git; ActivePapers tracks how code and data combine into results.

What about sensitive data?

Packages can reference restricted data by hash without including it, so access rules stay with the data owner.