Installation
This guide covers all the ways to install the Tracks CLI on your system.
Prerequisites
Before installing Tracks, ensure you have:
- Go 1.25 or later - Required for building from source or using
go install - Git - For cloning the repository (source installation only)
- CGO toolchain (optional) - Required only if you plan to generate projects using LibSQL or SQLite databases:
- Linux:
gcc,musl-dev(Alpine), orbuild-essential(Debian/Ubuntu) - macOS: Xcode Command Line Tools (
xcode-select --install) - Windows: MinGW-w64 or TDM-GCC
- Linux:
If you only plan to use PostgreSQL databases, you don't need CGO tooling. PostgreSQL drivers are pure Go.
Installation Methods
Choose the installation method that best fits your workflow.
Package Managers
The easiest way to install and keep Tracks up to date.
macOS - Homebrew
brew install anomalousventures/tap/tracks
Windows - Scoop
scoop bucket add anomalousventures https://github.com/anomalousventures/scoop-bucket
scoop install tracks
Direct Binary Download
Download pre-built binaries from GitHub Releases:
- Linux:
tracks_linux_amd64.tar.gz,tracks_linux_arm64.tar.gz - macOS:
tracks_darwin_amd64.tar.gz,tracks_darwin_arm64.tar.gz(Apple Silicon) - Windows:
tracks_windows_amd64.zip,tracks_windows_arm64.zip
Linux/macOS Example
# Download and extract (replace <version> and platform as needed)
curl -L https://github.com/anomalousventures/tracks/releases/download/<version>/tracks_linux_amd64.tar.gz | tar xz
# Move to PATH location
sudo mv tracks /usr/local/bin/
# Verify installation
tracks version
Windows Example (PowerShell)
# Download and extract (replace <version> as needed)
Invoke-WebRequest -Uri "https://github.com/anomalousventures/tracks/releases/download/<version>/tracks_windows_amd64.zip" -OutFile "tracks.zip"
Expand-Archive -Path "tracks.zip" -DestinationPath "."
# Move to PATH location or add current directory to PATH
Move-Item "tracks.exe" "$env:USERPROFILE\bin\"
Go Install
Install using Go's built-in package manager:
# Install specific version
go install github.com/anomalousventures/tracks/cmd/tracks@<version>
# Install latest release
go install github.com/anomalousventures/tracks/cmd/tracks@latest
Using go install requires Go 1.25+ and adds the binary to $GOPATH/bin. Make sure this directory is in your $PATH.
Docker
Run Tracks without installing it locally:
# Run tracks command via Docker (replace <version> as needed)
docker run --rm ghcr.io/anomalousventures/tracks:<version> version
# Pull specific version
docker pull ghcr.io/anomalousventures/tracks:<version>
# Use latest stable release
docker pull ghcr.io/anomalousventures/tracks:latest
To generate a project using Docker:
# Generate project in current directory
docker run --rm -v "$(pwd):/workspace" -w /workspace \
ghcr.io/anomalousventures/tracks:latest new myapp
From Source (Development Builds)
Install from the latest source code for development or testing unreleased features:
# Clone repository
git clone https://github.com/anomalousventures/tracks.git
cd tracks
# Build CLI
make build
# Binary available at ./bin/tracks
./bin/tracks version
For development work, you can also use:
# Install to $GOPATH/bin
make install
# Or run directly without installing
make dev version
Verification
After installation, verify Tracks is working:
tracks version
You should see output like:
Tracks CLI vX.X.X
Commit: abc1234
Built: 2025-01-15T10:30:00Z
Go: go1.25.5
Test creating a new project:
# Show available options
tracks new --help
# Generate a test project (dry-run)
tracks new testapp --db=sqlite3
Troubleshooting
Command Not Found
If you get command not found: tracks, ensure the installation directory is in your $PATH:
# Check current PATH
echo $PATH
# For go install, add $GOPATH/bin to PATH
export PATH="$PATH:$(go env GOPATH)/bin"
# For manual installation, add /usr/local/bin
export PATH="$PATH:/usr/local/bin"
Make this permanent by adding the export line to your shell profile (~/.bashrc, ~/.zshrc, etc.).
Permission Denied (Linux/macOS)
If you get "permission denied" when running the binary:
# Make binary executable
chmod +x /path/to/tracks
CGO Build Errors
If you see errors about missing C compiler when generating projects with LibSQL/SQLite:
Linux (Debian/Ubuntu):
sudo apt-get update
sudo apt-get install build-essential
Linux (Alpine):
apk add gcc musl-dev
macOS:
xcode-select --install
Windows:
Install MinGW-w64 via MSYS2 or use TDM-GCC.
If you don't need LibSQL/SQLite, use PostgreSQL which doesn't require CGO:
tracks new myapp --db=postgres
Next Steps
Now that Tracks is installed, you're ready to create your first project:
- Quickstart Tutorial - Build your first Tracks application in 15 minutes
- CLI Commands - Complete command reference
- tracks new Command - Detailed project generation guide
Need Help?
- GitHub Issues: Report bugs or request features
- Discussions: Ask questions and share ideas
- Contributing: Development setup guide