export PATH="$HOME/.opm/current:$PATH"
The Odin Package Manager
A fast CLI tool for managing Odin projects, packages, and compiler versions. Built with Bun for maximum performance.
$ opm init my-project
✓ Created opm.json
✓ Created project structure
$ opm add odin-lang/raylib-odin
ℹ Adding package: raylib
✓ Added raylib to dependencies
$ opm build
ℹ odin build src -out:bin/my-project
✓ Build complete
Install, switch, and manage multiple Odin compiler versions effortlessly.
opm install latest
opm use dev-2025-12
opm versions
Add dependencies from GitHub with a lockfile for deterministic, reproducible builds.
opm add user/repo
opm install --frozen # CI mode
opm update
Initialize, build, run, and test Odin projects with built-in commands.
opm init my-app
opm build
opm run
Built with Bun for instant startup times and minimal resource usage.
# Single binary
# No runtime dependencies
# Cross-platform
curl -L https://github.com/biswas08433/opm/releases/latest/download/opm-linux-x64 -o opm
chmod +x opm
sudo mv opm /usr/local/bin/
curl -L https://github.com/biswas08433/opm/releases/latest/download/opm-macos-arm64 -o opm
chmod +x opm
sudo mv opm /usr/local/bin/
# Download from GitHub Releases
# https://github.com/biswas08433/opm/releases/latest
# Download opm-windows-x64.exe and add to PATH
git clone https://github.com/biswas08433/opm.git
cd opm
bun install
bun run build
sudo mv opm /usr/local/bin/
After installation, set up the Odin compiler path:
export PATH="$HOME/.opm/current:$PATH"
opm install latest
opm use latest
opm init my-project
cd my-project
opm add odin-lang/raylib-odin
opm add some-user/cool-library@v1.0.0
opm build
opm run
| Command | Description |
|---|---|
opm versions |
List available Odin versions |
opm install <version> |
Install Odin version |
opm use <version> |
Switch to version |
opm current |
Show current version |
opm init [name] |
Initialize project |
opm build |
Build project |
opm run |
Run project |
opm test |
Run tests |
opm add <pkg> |
Add dependency |
opm remove <pkg> |
Remove dependency |
opm update |
Update dependencies |
opm update --check |
Preview available updates |
opm install --frozen |
Install from lockfile (CI) |
opm search <query> |
Search packages |
Projects use an opm.json file:
{
"name": "my-project",
"version": "0.1.0",
"description": "My Odin project",
"odinVersion": "dev-2025-12",
"dependencies": {
"raylib": "odin-lang/raylib-odin"
},
"scripts": {
"deploy": "scp bin/my-project user@server:/app/"
},
"build": {
"src": "src",
"out": "bin",
"flags": ["-debug"]
}
}
Note: Commands build, run,
test, and check are automatically generated
from the build config. Use scripts for custom
commands only.