# Devbox — Instant Dev Environments Powered by Nix > Create isolated, reproducible development environments with a single command, backed by the Nix package ecosystem. ## Install Save as a script file and run: # Devbox — Instant Dev Environments Powered by Nix ## Quick Use ```bash curl -fsSL https://get.jetify.com/devbox | bash devbox init devbox add python@3.12 nodejs@20 devbox shell ``` ## Introduction Devbox wraps the Nix package manager behind a simple CLI so teams can define per-project dependencies without containers or global installs. Each project gets an isolated shell with exactly the tools it needs, and the configuration is a single JSON file that can be committed to version control. It gives you the reproducibility of Nix without having to learn the Nix language. ## What Devbox Does - Creates isolated shell environments with project-specific packages - Pins exact package versions for reproducible builds across machines - Generates Dockerfiles and OCI images from Devbox configurations - Supports init hooks and shell scripts that run when entering the environment - Integrates with direnv for automatic environment activation when you cd into a project ## Architecture Overview Devbox uses Nix under the hood to resolve and install packages from the Nixpkgs repository. When you run `devbox shell`, it builds a Nix profile containing only the packages listed in `devbox.json`, then spawns a subshell with PATH set to that profile. Packages are cached in the Nix store, so shared dependencies across projects are stored only once on disk. ## Self-Hosting & Configuration - Install the Devbox CLI with the official install script or via Homebrew - Run `devbox init` in any project directory to create a `devbox.json` file - Add packages with `devbox add @` for pinned versions - Define init hooks in `devbox.json` to run setup commands on shell entry - Use `devbox generate dockerfile` to produce a container image from your environment ## Key Features - No Nix language knowledge required — just `devbox add` and `devbox shell` - Over 100,000 packages available from the Nixpkgs repository - Reproducible across macOS and Linux with the same `devbox.json` - Built-in services support for running databases and background processes - Seamless direnv integration for auto-activation without manual shell entry ## Comparison with Similar Tools - **Nix Flakes** — full Nix power but requires learning the Nix language; Devbox abstracts it away - **Docker Dev Containers** — heavier isolation via containers; Devbox uses native Nix profiles - **asdf / mise** — version managers for runtimes; Devbox manages arbitrary system packages too - **Conda** — focused on Python and data science; Devbox covers any language and system tool - **Vagrant** — spins up full VMs; Devbox works at the package level without virtualization overhead ## FAQ **Q: Do I need to learn Nix to use Devbox?** A: No. Devbox handles all Nix interactions behind the scenes. You work with `devbox.json` and CLI commands. **Q: Does Devbox work on macOS?** A: Yes. Devbox supports both macOS (Intel and Apple Silicon) and Linux. **Q: Can I use Devbox in CI/CD?** A: Yes. Run `devbox run