uv: Python package and project manager
uv is a very fast Python package and project manager written in Rust. It replaces pip, venv and related tools, manages lock files and can install Python itself.
Not checked by a trusted editor yet Last edited Outdated?
astral-sh/uv
- Stars
- 90.8k
- Forks
- 3.7k
- Language
- Rust
- Licence
- Apache-2.0
- Last push
- 15 Oct 2026
On GitHub: An extremely fast Python package and project manager, written in Rust.
Open on GitHubuv, developed by Astral, covers several jobs that traditionally needed separate tools. uv venv creates virtual environments, uv pip install is a pip-compatible installer, uv init, uv add and uv run manage a whole project through pyproject.toml and a uv.lock file, uv python install downloads Python versions, and uv tool runs or installs command-line tools in isolated environments. It is distributed as a single binary, so it does not depend on an existing Python installation.
Use it when installs feel slow, when you want reproducible environments from a lock file, or when you need several Python versions side by side. Because uv pip accepts familiar commands and requirements.txt files, you can adopt it in an existing project without changing its layout.
The underlying ideas are the same as in the “Virtual environments with venv” article: one isolated environment per project, rebuilt from a file you commit. Learning plain venv and pip first makes it much easier to understand what uv is doing for you.
See also
- 0001 Virtual environments with venv A virtual environment is a private folder of Python packages for one project, so projects never fight over versions. Create one with… Beginner · Concept · Any system Article Environments & packages 15 Oct 2026
- 0007 Fix: ModuleNotFoundError: No module named ‘…’ Python cannot find a module you import. Usually the package was installed into a different interpreter or virtual environment than the one… Beginner · Fix · Any system Article Common errors · Environments & packages 15 Oct 2026
- 0011 Bootstrap a new Python project with a venv A Bash script that creates a project folder with a virtual environment, .gitignore, requirements.txt and a starter main.py, then runs it to… Intermediate · How-to · Linux, macOS Script Environments & packages 15 Oct 2026
- 0261 Build a Python command-line to-do app: from empty folder to installable command Create a small to-do tool in Python with argparse and JSON storage, test it with pytest and package it with pyproject.toml so… Beginner · Tutorial · Any system Article Environments & packages · Files & automation · Testing 15 Oct 2026
History
Every saved edit is kept. The plot on the sleeve draws one line per edit. Open any edit to see exactly what changed.
- Commitpedia +1,018 chars