# DevBox DevBox (also styled Devbox) is an open-source CLI from Jetify that creates isolated, declarative, per-project development environments without containers or virtual machines. Under the hood, it is a friendly wrapper over the [Nix package manager](https://nixos.org/) ; you declare the packages your project needs in a `devbox.json`, run `devbox shell`, and DevBox materializes a reproducible shell with exactly those binaries on `PATH`. It targets the same problem space as containers and [[Cloud Development Environment (CDE)|CDEs]] ; "the project must work the same on every machine" ; but stays *local* and *lightweight*. No daemon, no image build, no port mapping, no syncing. ## What It Is Good For - **Local reproducibility**: `git clone` + `devbox shell` and the exact toolchain (Go 1.23, Node 22, postgres 16, ffmpeg 7) is on PATH for everyone on the team - **Polyglot projects**: pin Python, Node, Rust, and a database without three separate version managers - **Lower friction than [[Docker]] for editor + CLI workflows**: no FS performance penalty on macOS, no port-forwarding ceremony - **Reproducible CI**: the same `devbox.json` runs in [[GitHub Actions]] and locally ## How It Works DevBox stores its dependency graph in `devbox.lock` ; each tool resolves to a specific Nix store path. `devbox shell` enters a subshell with PATH/env adjustments; nothing is installed globally. Removing the project deletes its environment ; nothing leaks into your `/usr/local`. ## Where It Doesn't Fit - **You need an actual Linux kernel feature**: containers are still the right tool - **You need to ship the environment to non-developers**: containers/[[Cloud Development Environment (CDE)|CDEs]] are easier to deliver - **You're not on macOS or Linux**: Windows support requires WSL2 ## DevBox vs Adjacent Tools - **vs raw [[Docker]]**: faster, lighter, no networking concerns, no FS sync ; but Linux-only inside any actual container - **vs Nix directly**: same engine, gentler interface ; trade some power for a lower learning curve - **vs `mise` / `asdf`**: those manage runtime versions; DevBox manages *the entire toolbelt*, including system libraries - **vs [[GitHub Codespaces]] / cloud IDEs**: stays local, no per-hour cost, but doesn't move compute off your laptop. For *that*, see [[Crabbox]] ## References - Project home: https://www.jetify.com/devbox - GitHub: https://github.com/jetify-com/devbox - Documentation: https://www.jetify.com/devbox/docs/ ## Related - [[Docker]] - [[Cloud Development Environment (CDE)]] - [[GitHub Codespaces]] - [[Crabbox]] - [[Ephemeral Environments]]