TL;DR - Key Takeaways
A decent chunk of new Python repos already use uv. Coding agents still overwhelmingly recommend pip and requirements.txt, while many users prefer uv.
Introduction
Since uv’s introduction in February 2024, it has quickly become my favorite tool for Python projects. Its marketing leans on speed, but I love it for how it manages Python installations and virtual environments. Being able to define supported Python versions in pyproject.toml and avoid documenting virtualenv setup in the README.md made me switch from poetry for all new Python projects. The community seems to agree. But are people actually using uv?
We aren’t uv yet
At 74.2%, uv was the most “admired” tag in Stack Overflow’s 2025 developer survey. In my own study of the top 100,000 GitHub repositories by star count, 18,373 repos contained Python tooling, and uv was used in only 10% of those. For the charts and numbers below, I used the presence of uv.lock for detecting uv adoption and requirements.txt as a proxy for pip.
Using all top repos introduces a strong legacy bias, so let’s look at repos created in 2025, the first full year of uv’s availability. There, uv shows up in 32% of Python repos and reaches 43% of the popularity of requirements.txt.
A quarter of the way through 2026, uv was used in 30% of Python repos created in 2026 and had reached 44% of the popularity of requirements.txt. The sample size was 245 repos; 13 of those used both uv and requirements.txt. The most-starred Python repo of 2026 so far, karpathy/autoresearch, uses uv.
Because many Python developers work on more than one repo, the actual install base of uv among developers is likely substantially higher than 30%.
Why the Gap?
The knee-jerk guess is that people don’t want a VC-backed tool or an OpenAI-acquired tool. In practice, being VC-backed didn’t stop uv from overtaking poetry in 2025, and I can’t discern a slowdown from the OpenAI deal so far.
Examining top 2026 repos with requirements.txt, I found uses such as: installing zero dependencies, installing agent skills, using it only for tests while using uv for other deps, supporting a benchmarking subproject, running inside an agent, and declaring regular Python project dependencies.
A charitable explanation is that people just want to use pip and manage their own virtual environments. However, except for the last case, these requirements.txt usages mostly don’t appear intentional. My guess is that LLM agents are writing most of them. When I asked ChatGPT, Gemini, and Claude how to install a Python package, they all recommended pip. A decade of pip install -r requirements.txt and pip install {package} in the training data is hard to beat.
My Recommendations
The good news is that just because LLMs suggest pip and requirements.txt doesn’t mean your teammates don’t have uv. I recommend the following three courses of action, depending on what you do:
- For library authors, include a
uv add {package}install instruction alongside pip. - For application authors, recommend uv with
pyproject.tomlanduv.lock. Your users will prefer that to debugging their Python versions and virtual environments. - For script authors, use inline script dependencies, as described in PEP 723, instead of bundling a
requirements.txt.