explaingit

astral-sh/uv

🔥 Hot84,446RustAudience · developerComplexity · 3/5ActiveLicenseSetup · easy

TLDR

A fast Python package and project manager written in Rust that replaces pip, poetry, pipx, and other fragmented tools with a single command, 10, 100× faster.

Mindmap

mindmap
  root((uv))
    What it does
      Manages dependencies
      Resolves versions
      Creates lockfiles
      Installs Python
    How it works
      Virtual environments
      Disk caching
      Inline scripts
      CLI tools
    Use cases
      Speed up workflows
      Unify tooling
      Reproduce setups
      Run scripts
    Tech stack
      Rust
      Python
    Audience
      Python developers
      Project maintainers

Things people build with this

USE CASE 1

Speed up Python dependency installation and project setup by 10, 100× compared to pip.

USE CASE 2

Replace multiple fragmented tools (pip, poetry, pipx, pyenv) with a single unified command.

USE CASE 3

Write and run single-file Python scripts with inline dependency declarations.

USE CASE 4

Install and manage command-line tools published as Python packages without polluting your system.

Tech stack

RustPython

Getting it running

Difficulty · easy Time to first run · 5min
Use freely for any purpose including commercial. Keep the notice and disclose changes to the patent grant.

In plain English

uv is a tool that handles everything to do with running Python projects: installing the Python language itself, creating isolated environments, fetching the libraries a project depends on, locking those library versions so the project builds the same way later, and running the resulting code. The pitch is that it bundles into one command-line program what would normally be a stack of separate tools, and that it runs ten to a hundred times faster than the older standard, pip, because it is written in Rust rather than Python. Under the hood, uv is a dependency resolver: given a list of libraries a project wants, it figures out a set of exact versions that satisfy everyone's requirements, records that decision in a lockfile, and then downloads and links the libraries from a shared cache on disk so the same library is never stored twice. It also installs Python versions on demand, supports a pip-style interface so existing projects can switch without changing their workflow, and supports workspaces where several related projects sit in one repository. Single-file scripts can declare their own dependencies in a comment block and uv will fetch them on the fly. It runs on macOS, Linux, and Windows. Someone would reach for uv when they are tired of waiting on pip, juggling pyenv plus virtualenv plus pipx, or trying to make sure two machines install exactly the same versions of everything. It is backed by Astral, the team behind the Ruff linter. The full README is longer than what was provided.

Copy-paste prompts

Prompt 1
How do I migrate my existing pip/poetry project to use uv for faster dependency management?
Prompt 2
Show me how to use uv to create a virtual environment and install dependencies from a requirements file.
Prompt 3
How can I use uv to run a Python script with inline dependencies without creating a full project?
Prompt 4
What's the fastest way to set up a new Python project with uv and lock dependencies for reproducibility?
Prompt 5
How do I use uv to install and run a command-line tool published on PyPI in an isolated environment?
Open on GitHub → Explain another repo

Generated 2026-05-21 · Model: sonnet-4-6 · Verify against the repo before relying on details.