Declarative, reproducible developer environments built on Nix, configured in a devenv.nix file with languages, services and processes.
jetify-com/devbox
A command-line tool that creates isolated, reproducible development shells with project-specific packages from the Nix registry, without containers.
- Stars
- 12,448
- Forks
- 363
- Open issues
- 409
- Last commit
- yesterday
What is it?
Devbox is a command-line tool for creating isolated development shells. You list the packages a project needs in a devbox.json file, and Devbox builds an environment with exactly those tools, separate from the host machine. It works like a project-level package manager for operating-system packages such as Python, Go or Node, and it draws on the Nix Package Registry, which offers hundreds of thousands of package versions.
Because the environment runs directly on the laptop rather than inside a virtual machine, file access and command execution stay at native speed. The same definition can be reused to produce a devcontainer for VS Code, a Dockerfile for a production image, or a cloud development environment, so the team works from one source of truth.
Devbox is written in Go, licensed under Apache 2.0, and was originally developed by Jetify. It is built on top of Nix, which it uses internally to resolve and isolate packages.
Key features
- 01Declare project tools in a devbox.json file and share it across the team.
- 02Install and run versioned OS-level packages without touching the host system.
- 03Start an interactive shell with devbox shell or run one-off commands with devbox run.
- 04Generate devcontainer and Dockerfile setups from the same environment definition.
- 05Access a large catalog of package versions from the Nix Package Registry.
Use cases
- Giving every contributor to a project the same versions of compilers and CLI tools.
- Trying a new tool or language version without changing the global system installation.
- Working on several projects that require conflicting versions of the same binary.
- Building a production container image that uses the same tools as local development.
Quick start
- 1
Open a terminal in a new empty folder and initialize Devbox
devbox init - 2
Add a package from Nix (example: Python 3.10)
devbox add python@3.10 - 3
Start a shell with these tools installed
devbox shell - 4
Run the official install script from the README first (it pipes a remote script into bash)
Things to know
- Packages come from the Nix registry, so you need Nix-based tooling underneath Devbox.
Topics
FAQ
- What is devbox?
- A command-line tool that creates isolated, reproducible development shells with project-specific packages from the Nix registry, without containers. Devbox is a command-line tool for creating isolated development shells. You list the packages a project needs in a devbox.json file, and Devbox builds an environment with exactly those tools, separate from the host machine. It works like a project-level package manager for operating-system packages such as Python, Go or Node, and it draws on the Nix Package Registry, which offers hundreds of thousands of package versions.
- Is devbox free to use? What license does it have?
- devbox is open source under the Apache-2.0 license. Check the license terms before using it in commercial products.
- Is devbox still maintained?
- Actively maintained. The last commit to devbox was on Nov 6, 2026.
- What can I use devbox for?
- Giving every contributor to a project the same versions of compilers and CLI tools. Trying a new tool or language version without changing the global system installation. Working on several projects that require conflicting versions of the same binary. Building a production container image that uses the same tools as local development.
- How do I install devbox?
- Open a terminal in a new empty folder and initialize Devbox: devbox init Add a package from Nix (example: Python 3.10): devbox add python@3.10 Start a shell with these tools installed: devbox shell Run the official install script from the README first (it pipes a remote script into bash)
- Where can I get devbox?
- The source code and installation instructions are on GitHub: https://github.com/jetify-com/devbox
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
Python-based tool for repeatable assembly and deployment of applications built from Python distributions and other systems.
A single-header C library for writing build scripts in C, so a C compiler is the only build dependency.
A Python task runner and build tool that defines tasks as plain Python functions and skips work that is already up-to-date.
An extremely fast Python package and project manager written in Rust, replacing pip, virtualenv, pyenv, pipx and more.
Installs and runs Python command-line applications in isolated environments so their dependencies never conflict with each other or the system.