#Uv

6 posts

Python Packaging #7 Team Conventions and Tool Choice: uv, poetry, pip
5 min read

Python Packaging #7 Team Conventions and Tool Choice: uv, poetry, pip

The series finale: tool choice and team conventions. uv, poetry, and pip+venv on one table with criteria that decide between them, the real cost of migration, caching and frozen verification in CI, the standard pattern for uv in Docker images, and a team convention checklist that survives new teammates — closing with a look back at the whole series.

Python Packaging #5 Dependency Locking: Lock Files and Reproducibility
5 min read

Python Packaging #5 Dependency Locking: Lock Files and Reproducibility

Starting from why declaration and lock are separate, we read the contents of uv.lock directly: the resolution result that pins every transitive dependency, the supply-chain risks hash verification blocks, reproducing the lock exactly in CI with --frozen, a strategy that turns upgrades into routine work, and pylock.toml (PEP 751), the standard that opens movement between tools.

Python Packaging #4 uv: The Standard Workflow of 2026
5 min read

Python Packaging #4 uv: The Standard Workflow of 2026

The daily uv workflow that folds virtual environments, dependency installation, locking, and Python version management into one tool: how init, add, sync, and run replace the manual work of earlier posts, uv installing Python interpreters themselves, isolated global tools via uvx and uv tool, and migrating existing requirements.txt projects.

Docker in Practice #1: Containerizing FastAPI — uv, Multi-stage, non-root
8 min read

Docker in Practice #1: Containerizing FastAPI — uv, Multi-stage, non-root

First post of the practice series. Containerizing the most common scenario — a FastAPI app. Slim base on uv, multi-stage to separate build from runtime deps, a non-root user, and HEALTHCHECK — in a shape that goes straight to production.

Django Basics #2: Project Setup — uv + django-admin startproject
6 min read

Django Basics #2: Project Setup — uv + django-admin startproject

Create a Django 5 project with uv, lay down the first structure with startproject/startapp, and reach runserver in one breath.

Modern Python Basics #1: Getting Started and uv Setup
6 min read

Modern Python Basics #1: Getting Started and uv Setup

Why Python again — what changed in 3.14 since the 2017 tutorial, and building a first project with uv that replaces pip + venv + pyenv all at once.