yeetr¶
A tiny, typed, signature-driven CLI runner.
PyPI distribution: yeetr
Python import package: yeetr
CLI command: yeet
No decorators. No command classes. No ceremony. Just yeet the function.
Install¶
Requires Python 3.13 or 3.14.
30-second tour¶
Write a plain function:
Run it — no if __name__ == "__main__", no yeetr.run(...) call:
Parameters before the bare * become positional CLI args. Parameters
after it become --options. That's the whole mapping.
Where to go next¶
- Getting Started — installation, the
yeetscript and how it picks the function to run, the explicityeetr.run(main)form, and executable shebangs. - Async Support —
async def main, handled natively. - Parameter Types — every type yeetr understands,
from
PathtoEnumto tuples and variadic*args. - Parameter Metadata —
Arg/Opt, env var fallback, hidden options. - Bundled Args — group related parameters into a
dataclassorNamedTuple. - Path Validators —
exists,file_okay,dir_okay,readable, andwritablechecks. - CLI Rules — the short reference for how signatures map to flags.
- Runtime Behavior — logging, testing, and how help and error output is rendered.
- yeetr vs. typer — an honest comparison so you can pick the right tool.
- API Reference — generated reference for the public API.
- Releases — how
yeetris versioned and shipped.