tally, step by step

We follow tally, a word counter, from a project that does nothing to a command with tests, types and a report. tally is a uv project from the beginning. Every command runs through uv run, in the project's own .venv, and never in the Python of the system. Each part begins with just setup, which brings the environment and the files that the code needs up to date. just setup never changes git.

Each part ends with a section called What changed. It lists every file that the part changes, with a link to the file, and then the whole diff of each file, folded. A lockfile and a binary file have a link alone. The text above it explains the change.

Read the tutorial

Each change explained, with the code to look at.