Project-scoped
Each project declares its own tool versions. No global conflicts, no side effects.
Define your tools in a project-env.toml at the project root:
tools_directory = ".tools"
[jdk]version = "21.0.2+13"distribution = "TEMURIN"
[maven]version = "3.9.6"
[nodejs]version = "22.12.0"Then run:
source <(project-env-cli install --output-template=sh)That’s it. java, mvn, and node are now available — project-local, no global install conflicts.
Project-scoped
Each project declares its own tool versions. No global conflicts, no side effects.
Cross-platform
Works on Windows, Linux, and macOS.
Environment-agnostic
One config file drives your shell, IDE, and CI — no per-environment setup.
Extensible
Supports JDK, Maven, Gradle, NodeJS, Git hooks, and any generic tool via custom download URLs.