The workshop · Edition No. 10 · 4 Sep 2026

astral-sh/uv

One tool that replaces pip, virtualenv, pyenv and several others, and runs far faster.

← The workshopRead the whole edition →
uv: faster packaging and environments. Replaces several packaging tools with one.

89.6k stars · Apache-2.0 · 0.12.10 (2026-09-04) · Track this in Rising ↗

The end of `source venv/bin/activate` — and of the Sunday afternoon lost to a broken environment.

Verified25 Oct 2026

Radar check

What we found when we opened it. Every bar is one fact, with its date.

Alive100

Last code pushed 25 Oct 2026, 2 days before this check.

Releases100

Latest release 0.13.5 on 22 Oct 2026.

Maturity70

Public since October 2023, about 3 years.

Adoption99

91,144 stars and 3,696 forks.

Activity100

1,388 commits and 260 new issues in the last 90 days.

Community100

607 contributors. 1384 pull requests merged in 90 days.

Security80

A security policy says how to report a problem. 8 published security advisories.

Licence MIT / Apache-2.0 | [docs.astral.sh/uv](h: permissive: use it for anything, keep the noticeSetup effort 1 of 5Payoff 4 of 5
How the bars are scored
  • Alive. Days since the last code push: a week or less 100, a month 90, three months 70, six months 50, a year 30, eighteen months 15, older 0.
  • Releases. Age of the latest GitHub release, on a similar scale; no bar when the project publishes no releases.
  • Maturity. Age of the project: eight years 100, five 90, three 70, two 55, one 40, six months 25, younger 10.
  • Adoption. Stars on a log scale: 100,000 stars is 100, 10,000 is 80, 1,000 is 60, 100 is 40.
  • Activity. Commits in the last 90 days: 300 or more 100, 100 85, 30 65, 10 45, any 25.
  • Community. People who have contributed: 100 or more 100, 30 80, 10 60, 5 40, 2 25, one 10.
  • Security. A published security policy 80, none 40; published advisories are listed, not scored.

Checked by Repo Radar on 25 Oct 2026 from the repository on GitHub. Covered in Edition 10.

▶Repo detailsthe review · specs · pros & cons · install

What it does

It installs packages and manages the isolated folders they live in. Its README says it replaces pip, pip-tools, pipx, poetry, pyenv, twine and virtualenv, among others, and claims it installs ten to a hundred times faster than pip, with the benchmarks published in the repository. It installs Python versions and switches between them, so a project needing an older interpreter does not need a separate version manager. It runs packaged command-line tools without installing them permanently, through uvx. It writes one lock file that records exactly what a project resolved to. It supports workspaces for projects made of several packages, and single-file scripts that declare their own dependencies inline. A shared cache means a package downloaded once is not downloaded again. What it does not change is what a package needs in order to build: anything requiring a compiler still requires one.

Why it matters

Who it suits. Anyone who installs Python tools regularly and has lost time to a broken environment, and anyone who writes short scripts that need two libraries and should not need a project. It suits a new Python user most of all, because the old sequence of commands is the part that most often ends an attempt before it starts. Skip it only if an existing packaging setup is working and shared across a team that would all have to change.

Verdict. Twenty minutes, and the best-value item on this page, because it is what makes the other eleven easier to try. uv run --with textstat script.py runs a tool from this page with nothing installed permanently and nothing to clean up afterwards. Two honest caveats. It is still on a zero-point version number — 0.13.0 was published on 9 October 2026 — and behaviour occasionally shifts between minor versions, so pin it in anything that matters. And every tutorial you read will still say pip install, so you will be translating instructions in your head for a while. python-poetry/poetry at 34,290 stars is the established alternative with a different project model.

Stars89.6k
LicenceApache-2.0
Latest0.12.10 (2026-09-04)checked 7 Sep 2026
Written inRust
NeedsPython 3
RunsLocally, on your own machine
Summary (Key Points)from the README
Key features
  • Replaces many tools: One tool covers pip, pip-tools, pipx, poetry, pyenv, twine, virtualenv, and more.
  • Speed: The README claims 10-100x faster than pip, with an example of installing Trio's dependencies using a warm cache.
  • Project management: Handles dependencies, environments, lockfiles, and Cargo-style workspaces, with a universal lockfile. It can also build and publish projects not managed with uv.
  • Single-file scripts: Declares dependencies as inline metadata and runs each script in an isolated virtual environment.
  • Tools: Runs tools in ephemeral environments with `uvx` (an alias for `uv tool run`) or installs them with `uv tool install`.
  • Python versions: Installs multiple Python versions, downloads them as needed, and pins one for the current directory.
  • pip-compatible interface: Drop-in replacement for common pip, pip-tools, and virtualenv commands, with extras such as dependency overrides and platform-independent resolutions.
  • Disk efficiency: A global cache deduplicates dependencies across projects.
Ways to install
Platform or methodWhat it needsEffort
Standalone installers (curl)No Rust or Python required, per the READMEOne command; supports self-update
PyPI (pip)Python with pip, implied by the PyPI routeOne command
Important
  • Self-update limit: Self-update works only for installs made with the standalone installer.
  • Benchmark context: The 10-100x speedup is compared with pip and shown in a warm-cache example, so real gains will vary by workload.
  • Partial pip compatibility: The pip interface is a drop-in replacement only for common commands. Extra features go beyond pip's own interface.
  • Platform support: macOS, Linux, and Windows are listed, but the README points to a separate platform support document for details.
  • Licensing: Dual-licensed under Apache-2.0 or MIT, at the user's option.

Written by an AI model from the project’s README; not part of the review, and it can be wrong.

Setup effort
1 / 5
Payoff
4 / 5
Good
  • One binary, no bootstrap interpreter required, so a fresh machine and a laptop behave the same.
  • Ten to a hundred times faster than pip by its own published benchmarks, which changes what you try on a whim.
  • Running a tool with --with installs nothing permanently, so an experiment leaves no trace.
Watch for
  • Still a zero-point version, and behaviour sometimes changes between minor versions.
  • Most documentation elsewhere still gives the older commands, so instructions need translating.
  • It cannot remove a package's own build requirements: a compiler is still a compiler.
Replaces

That one command is why more of this ledger will get tested instead of bookmarked.

Install
curl -LsSf https://astral.sh/uv/install.sh | sh
exec $SHELL
uv --version
Screenshots
astral-sh/uv: GitHub preview card

On Stack Radar: Build & Ship › Developer Environments › Local Development.

Get the next edition in your inbox

A dozen repositories, opened and checked. The licence read, the last release dated, and the ones that did not make it named with the reason. It is the half most lists leave out.

No tracking pixels. One click to leave. The archive stays free either way.

We use your address to send the edition and nothing else. Confirm by email, leave in one click. How we handle it.