Show HN: Gawain – Require type hints on all Python variables
Gawain is a Python tool that enforces type annotations on all variables, parameters, returns, and class attributes by requiring explicit type hints and then running a type checker (ty or pyrefly) to validate correctness. Unlike existing tools like ruff's ANN rules that only check function annotations, Gawain also requires annotations on variables and class attributes to eliminate ambiguous types like `dict[str, Any]`. The tool can be installed via pip or uv with support for multiple type checkers.