| Crates.io | uvenv |
| lib.rs | uvenv |
| version | 0.0.1 |
| created_at | 2026-01-04 09:31:59.105952+00 |
| updated_at | 2026-01-04 09:31:59.105952+00 |
| description | Swift as dambi, powered by uv — pyenv-style Python environment manager |
| homepage | https://github.com/ai-screams/uvenv |
| repository | https://github.com/ai-screams/uvenv |
| max_upload_size | |
| id | 2021656 |
| size | 95,336 |
Swift as dambi, powered by uv — pyenv-style Python environment manager
uvenv is a centralized Python virtual environment manager using uv as its backend.
It combines pyenv-virtualenv's workflow with uv's speed.
Problem uvenv Solution
─────────────────────────────────────────────────────
.venv scattered across projects ~/.uvenv/virtualenvs/ centralized
Manual source .venv/bin/activate uvenv activate or auto-activate
pyenv-virtualenv is slow uv-based, 100x+ faster
# Create a virtual environment
uvenv create myproject 3.12
# Activate
uvenv use myproject # Set for current directory
cd ~/projects/myproject # Auto-activates
(myproject) $
# Install packages
pip install requests # or uv pip install
# Manage
uvenv list # List all environments
uvenv remove myproject # Delete
# Coming soon
cargo install uvenv
# Bash
echo 'eval "$(uvenv init bash)"' >> ~/.bashrc
# Zsh
echo 'eval "$(uvenv init zsh)"' >> ~/.zshrc
| Command | Description |
|---|---|
uvenv create <name> <version> |
Create virtual environment |
uvenv use <name> |
Set local environment (.uvenv-version + .venv symlink) |
uvenv use <name> --global |
Set global default environment |
uvenv list |
List all virtual environments |
uvenv remove <name> |
Delete virtual environment |
| Command | Description |
|---|---|
uvenv install |
Install latest Python (same as --latest) |
uvenv install --latest |
Install latest stable Python |
uvenv install --stable |
Install oldest fully-supported Python (more stable) |
uvenv install 3.12 |
Install latest patch of 3.12.x |
uvenv install 3.12.3 |
Install exact version 3.12.3 |
uvenv uninstall <version> |
Remove installed Python version |
uvenv list --pythons |
List installed Python versions |
Note: Python versions are managed by uv and downloaded automatically when needed.
| Command | Description |
|---|---|
uvenv init <shell> |
Output shell initialization script |
# Clone
git clone https://github.com/ai-screams/uvenv.git
cd uvenv
# Install prek (pre-commit alternative)
uv tool install prek
# or: pip install prek
# Install git hooks
prek install
# Build
cargo build
# Run tests
cargo test
Hooks run automatically on git commit:
| Hook | Description |
|---|---|
cargo fmt |
Code formatting |
cargo clippy |
Linting |
cargo check |
Type checking |
trailing-whitespace |
Whitespace fixes |
check-toml |
TOML validation |
# Run all hooks manually
prek run --all-files
# Run specific hook
prek run cargo-clippy
# Build
cargo build
cargo build --release
# Test
cargo test
cargo test --all-features
# Lint
cargo clippy --all-targets -- -D warnings
# Format
cargo fmt
cargo fmt --check
# Run
cargo run -- --help
cargo run -- list
Licensed under either of:
at your option.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in this work shall be dual licensed as above, without any additional terms or conditions.