UV - Ffast Python Package and Project Manager
Note: we are no longer using /requirements.txt to keep our dependencies up to date. We are using pyproject.toml with UV, which provides excellent [features](https://docs.astral.sh/uv/getting-started/features/)
See the tutorial: [Managing Python Projects With uv: An All-in-One Solution](https://realpython.com/python-uv/)
The tutorial has a quick list of key uv features for managing Python projects:
Fast dependency installation: Installs dependencies really fast, which is especially useful for large dependency trees.
Virtual environment management: Automatically creates and manages virtual environments.
Python version management: Allows the installation and management of multiple Python versions.
Project initialization: Scaffolds a full Python project, including the root directory, Git repository, virtual environment, pyproject.toml, README, and more.
Dependency management: Installs, updates, removes, and locks direct and transitive dependencies, which allows for environment reproducibility.
Package builds and publication management: Allows you to build and publish packages to package repositories like the Python Package Index (PyPI).
Developer tooling support: Installs and lets you run development tools, such as pytest, Black, and Ruff.