astral-sh/uv
uv
uv is an extremely fast Python package and project manager, written in Rust. It is built and maintained by Astral, the creators of Ruff and ty.
What this wiki covers
This wiki is a code-oriented companion to the user-facing product documentation at docs.astral.sh/uv. It documents how the codebase is organized, the major subsystems and how they fit together, and how to navigate it when contributing or debugging.
- Architecture describes the major components, where they live as Cargo crates, and how a typical command flows through the system.
- Getting started covers building, testing, and running uv locally.
- Glossary defines the project-specific vocabulary (forks, universal markers, trampolines, managed Python, etc.).
The bulk of the wiki is then split into:
- crates/ — every workspace crate and what it does, organized by role.
- features/ — cross-cutting capabilities (resolution, project workflow, tool execution, Python management) that span multiple crates.
- reference/ — configuration surface, dependencies, and key files.
Repository at a glance
| Aspect | Value |
|---|---|
| Language | Rust (workspace, edition 2024, MSRV 1.93) |
| Top-level binary | uv (crates/uv), with uvx as an alias for uv tool run |
| Crates in the workspace | ~70, all under crates/ |
| Build tool | Cargo |
| Test runner | cargo nextest plus insta snapshots |
| Documentation | mkdocs, sources in docs/ |
| License | MIT or Apache-2.0 |
uv exposes the public CLI from a single Rust crate at crates/uv, but the heavy lifting lives in
the supporting crates: uv-resolver for the PubGrub-based dependency
solver, uv-installer for installing wheels into a virtualenv,
uv-python for interpreter discovery and managed Python downloads,
uv-client for the registry HTTP client, and many more.
Quick links
Built by Factory AutoWiki from public repository content. It is a generated preview for codebase exploration, not source-maintained documentation.