d is a simple, no-fuss Deno version manager. Download, cache, and switch between Deno versions with a single command.
- Install any released Deno version by number, alias, or
canary - Interactive version picker (arrow keys)
- Version caching — no re-downloading
- Symlink-based activation (no subshells, no profile magic)
- List local and remote versions
- Run a specific version without activating it
| OS | Architectures |
|---|---|
| Linux | x86_64, aarch64 |
| macOS | x86_64, aarch64 |
| Windows | x86_64, aarch64 |
curl -fsSL https://raw.githubusercontent.com/THernandez03/d/main/install.sh | shThis installs d to ~/.local/bin/d. You can override the destination:
INSTALL_DIR=/usr/local/bin curl -fsSL https://raw.githubusercontent.com/THernandez03/d/main/install.sh | shcargo install --git https://github.com/THernandez03/dDownload the latest binary from Releases and place it in your PATH.
Add ~/.d/bin to your PATH:
# bash / zsh
export D_PREFIX="$HOME/.d"
export PATH="$HOME/.local/bin:$PATH" # for the d binary
export PATH="$D_PREFIX/bin:$PATH" # for managed Deno binariesImportant
Some zsh frameworks (e.g. oh-my-zsh) define d as an alias for dirs -v (directory stack). Add unset -f d after your PATH exports so the d binary takes precedence:
unset -f dOptional environment variables:
| Variable | Default | Description |
|---|---|---|
D_PREFIX |
~/.d |
Root installation prefix |
D_CACHE_DIR |
~/.d/versions |
Where downloaded versions are stored |
# Install and activate a version
d 1.40.0
d latest
d canary
# Interactive picker from cached versions
d
# List cached versions
d ls
# List remote versions
d ls-remote
# Fetch into cache without activating
d fetch 1.40.0
# Show path to a cached deno binary
d which v1.40.0
# Run a specific version
d run 1.40.0 -- --version
# Remove a cached version (interactive picker if no version given)
d remove v1.40.0
d rm v1.40.0 # alias
# Remove all except active
d prune
# Also remove the active version
d prune --force
# Show info
d info
# Update d itself
d update
# Fully remove d + all cached versions (requires confirmation)
d uninstall
d uninstall --yes # skip confirmation prompt| Alias | Resolves to |
|---|---|
latest |
Latest stable release |
stable |
Same as latest |
lts |
Same as latest |
canary |
Deno's nightly canary build |
next |
Same as canary |
1.46 |
Latest patch in 1.46.x |
1 |
Latest release in major 1 |
d downloads prebuilt Deno binaries from the denoland/deno GitHub Releases, caches them under ~/.d/versions/<tag>/, and creates a symlink at ~/.d/bin/deno pointing to the selected version.
No subshells. No profile setup. Just a symlink.
| Project | Runtime |
|---|---|
| n | Node.js version manager |
| b | Bun version manager |
| z | Zig version manager |
| r | Rust version manager |
MIT