Building human-first and machine-friendly CLI applications
summary
Builds a CLI catalogue of PyCon talks using clig.dev guidelines and scaffolds the project with Cookiecutter plus poetry, implements commands with typer and Rich. Project uses SQLite with a configurable dev DB env var, generates about 20 starter tests, supports interactive prompts vs noninteractive CI use, offers shell completion (occasionally flaky), prints rich tables plus plain and JSON, keeps headers on stderr so pipelines can wc -l, enforces zero/nonzero exit codes, and adds YouTube links; most features work with minor install hiccups.
AI-written summary · about
chapters (10)
- 0:00CLI design introduction
- 10:00Generating projects with Cookie Cutter
- 29:31Exploring generated CLI
- 50:17CLI Guidelines overview
- 1:00:13Human vs machine-friendly CLI
- 1:18:28Error handling in CLI tools
- 1:38:05Testing CLI applications
- 1:58:15Output formatting with Rich
- 2:08:11Interactive CLI features
- 2:15:20CLI design best practices
related talks
33mUpgrading Python CLIs From Scripts to Interactive Tools
31mDesigning a Human-Friendly CLI for API-Driven Infrastructure
25mThe Hitchhiker's Guide to CLIs in Python
29mBuilding Nice Command Line Interfaces — A Look Beyond the stdlib
25mReinventing the CLI with Go
36mCLI applications & TDD: Never write scripts again
40mBuilding a personal CLI
33mAwesome Commandline Tools
