Bivvy scans your project, detects your tools and runtimes, and generates a declarative config that gets your team running with zero friction. Customize it, version it, and use it anywhere you or your teammates go.
$ curl -fsSL https://bivvy.dev/install | sh
Define your entire dev environment in a single, readable .bivvy/config.yml file. Version it, share it, forget about it.
A polished terminal experience with progress indicators, prompts, and helpful error messages. Setup that feels good.
Node, Python, Ruby, Go, Rust, and more. Bivvy speaks your stack's language and handles dependencies gracefully.
Point bivvy at a project and it scans your machine for installed tools, runtimes, and services — then generates a config to match. Run it again and it only does what's needed.
Bivvy reads your project's .bivvy/config.yml and walks through each setup step interactively. Dependencies, environment variables, databases, services—all handled.
Templates, watches, dependencies, workflows. One file, version-controlled.
# .bivvy/config.yml steps: ruby: template: bundler watches: [Gemfile.lock] node: template: yarn watches: [yarn.lock] db: command: "rails db:prepare" depends_on: [docker]
Changed Gemfile.lock? Ruby step is stale. Didn't change it? Skip.
❯ bivvy status [✓] brew 2 hours ago [!] ruby stale (Gemfile.lock changed) [✓] node 2 hours ago [✓] docker running [pending] db not yet run
When something breaks, context-aware suggestions. Not "figure it out yourself."
✗ ruby failed: bundle install exited 1 How do you want to proceed? [r] Retry — run the step again [f] Fix — bundle update nokogiri [s] Skip — continue without this step [x] Shell — drop to shell to debug
Built-in support for popular runtimes and package managers
Bivvy gets you running right away and keeps things consistent with smart, shareable, idempotent configs.
Get started →