Correct by construction · MIT

All the world’s software, reproducible.

One command clones any project and provisions its exact toolchain. Reprobuild replaces your Dockerfile, Nix flake, Makefile, compose file, and Terraform module with one compile-time-verified model — builds, dependencies, dev environments, and services, with correct caching everywhere.

Runs natively onLinuxmacOSWindows*BSD
bash
$curl -fsSL https://get.reprobuild.com | sh
$repro develop firefox
 
Install →★ Star on GitHubMIT-licensed. Free for individuals & open source, permanently.

Every number links to a benchmark you can rerun on your own hardware. Figures shown here are illustrative examples for this prototype — the published site will carry live, reproducible measurements, and we never print a number we can’t reproduce.

The develop loop

Modifying any software should be easy.

Not just your software — anyone’s. One command clones the source and provisions the exact toolchain, libraries, and services to build it. When the bug turns out to be a level deeper, you pull that dependency in beside it — no container to rebuild, no environment to reconcile.

01 · Start anywhere
$repro develop firefox

A Firefox checkout plus every tool and library needed to build it — on Linux, macOS, Windows, or *BSD. No prior setup on the machine.

02 · Go a level deeper
$repro develop cairo

The bug is really in Cairo? Run this from inside the same workspace. Your checkout grows to include Cairo, and Firefox builds against your local copy.

One model

One file replaces five.

Reprobuild describes your project once, in a typed repro.nim model — and that one description is the build, the dependencies, the dev shell, the services, and the deployment. The same model your team runs is the one CI runs and the one that caches.

Dockerfileflake.nixMakefilecompose.ymlmain.tfrepro.nim
Benchmarks

Competitive with the fastest. Then it shards.

On a warm incremental build — monitoring on — Reprobuild’s scheduler matches Ninja, one of the fastest build engines there is. Split the work across machines and it scales nearly linearly, because every action is content-addressed and independently cacheable.

Incremental rebuild — one file changed
Wall-clock to rebuild after a single-file edit. Lower is better.
Reprobuild3.8sNinja3.9sccache6.4sGNU Make14.1s
Build + test sharding
Speedup as the same graph is split across N shards, vs ideal linear.
16×32×48×64×1248163264SHARDS
Reprobuildideal linear

Illustrative example data for this design prototype. Every figure on the live site will link to a rerunnable benchmark in the public repo.

The commercial layer

Free to build. Pay only for compute you’d buy anyway.

The CLI and your local cache are MIT and free, forever. When your team wants the shared, fast, and provable versions, they run on our infrastructure — priced per second of compute, never per seat of the tool.

Cache

The cache that can prove it’s right.

A shared, remote binary cache your whole team and CI hit. Because it’s content-addressed over complete inputs, a hit is never a wrong answer — your team already built that, and nobody should build it twice.

Reprobuild Cache →
Runners

Drop-in CI runners with a perfect memory.

One line — runs-on: reprobuild — and every job starts warm from the shared cache. No build rewrite, no migration quarter. The wedge first, the graph later.

Reprobuild Runners →
Build Cloud

When it’s not in the cache, build it on a hundred cores.

Distributed execution across the fleet, metered by the second. A cache miss becomes a burst, not a coffee break — and the result is content-addressed, so everyone gets it next time for free.

Reprobuild Cloud →
Private previewThe commercial layer is in early access. The CLI, the local cache, and everything under “What works today” are shipping now — MIT, free.Join the waitlist →
The mechanism

Correct by construction, not by heuristic.

A cache is only useful if it is never wrong. Reprobuild fingerprints the complete inputs to every step — sources, tools, environment — and addresses the result by that fingerprint. No timestamps, no make clean folklore, no guessing.

Content-addressed, end to end

Every output is keyed by the fingerprint of its complete inputs. Same inputs anywhere — your laptop, a teammate’s, CI — means the same result, byte for byte.

Monitored hermeticity

io-mon observes the files a build actually touches, so an undeclared dependency can’t hide. BuildXL’s idea — shipped cross-platform and typed.

Reproducibility you can check

A build-twice byte-equality gate in CI proves reproducibility instead of asserting it. Every claim on this site is a build target you can rerun.

Windows-first, not Linux-only

The monitored cache runs where your team runs — Windows included, not as a footnote. Correct and typed and cross-platform.

Shipping now

What works today.

repro develop <x> with local develop-mode overrides
Content-addressed local store
Monitored hermeticity (io-mon observed inputs)
Typed repro.nim configuration
Multi-core scheduler (Ninja-like)
Supervised dev services (repro shell / repro dev)
Tiered watch-mode incremental tests
Catalog adapters (Nix, Scoop)
Build-twice byte-equality CI gate
MIT CLI + single-server self-hostable cache

On the roadmap — shared/remote binary cache and Build Cloud, distributed execution, sandboxes and fleet management, hot-code reload with CodeTracer replay, and ReproOS with hardware attestation. We don’t ship a page before the product works, and every published number resolves to a benchmark you can rerun.

The repro CLI is MIT-licensed and free for individuals and open source — permanently. No seats, no metering on your own machine, no feature held behind a login. When we sell something, it’s compute you’d have paid for anyway — never the right to keep using what you already run.
// the standing promise, in the repository, in writing
Get started

Install in one line.

$curl -fsSL https://get.reprobuild.com | sh