Skip to main content

yeetr

yeetr, build tiny CLIs. Easy to code. Based on Python type hints.

Build Release Coverage Package version Supported Python versions License

yeetr

A tiny, typed, signature-driven CLI runner. Supports Python 3.13 and 3.14.

No decorators. No command classes. No ceremony. Just yeet the function.

Write a plain function, run it from the command line — yeetr turns the signature into args and options for you:

# app.py
def main(thing: int, *, n: float = 0.1) -> None:
    print(thing, n)
yeet app.py 5 -n 0.2

No if __name__ == "__main__" block, no yeetr.run(...) call, no decorators. Parameters before the bare * become positional args, parameters after it become --options.

Install

uv add yeetr

Highlights

  • Zero boilerplateyeet app.py finds and runs main — or any public function you name — and scaffolds the file if it doesn't exist yet.
  • Executable shebangs#!yeet makes a script runnable on its own; #!yeet FUNC picks the function to run.
  • Fully typedstr, int, float, bool, Path, datetime, date, time, UUID, Decimal, Literal, Enum, T | None, list[T], tuples, and structured dataclass/NamedTuple args, all Pyright-strict clean.
  • Async-nativeasync def main just works, with automatic uvloop if it's installed.
  • Rich output — formatted logging and help/error tables out of the box.

yeetr help output

Docs

The full guide — parameter metadata, env var fallback, path validators, runtime behavior, a yeetr vs. typer comparison, and the API reference — lives at rogerthomas.github.io/yeetr.

Contributing

See CONTRIBUTING.md for how to set up a dev environment, run the test suite, and submit changes.

License

MIT

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

yeetr-2026.8.14.post1.tar.gz (3.4 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

yeetr-2026.8.14.post1-py3-none-any.whl (18.4 kB view details)

Uploaded Python 3

File details

Details for the file yeetr-2026.8.14.post1.tar.gz.

File metadata

  • Download URL: yeetr-2026.8.14.post1.tar.gz
  • Upload date:
  • Size: 3.4 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.10.12 {"installer":{"name":"uv","version":"0.10.12","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for yeetr-2026.8.14.post1.tar.gz
Algorithm Hash digest
SHA256 29804addbcde5325a430e4db4cd976b52c9f23ef127111d7881f3ecdfb5231d1
MD5 51c6d4822e4da299251ca023d90d5bcc
BLAKE2b-256 ea2caa14354868008b82e0c93238eeaab94cf07262af67e7132dae0d81b24d90

See more details on using hashes here.

File details

Details for the file yeetr-2026.8.14.post1-py3-none-any.whl.

File metadata

  • Download URL: yeetr-2026.8.14.post1-py3-none-any.whl
  • Upload date:
  • Size: 18.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.10.12 {"installer":{"name":"uv","version":"0.10.12","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for yeetr-2026.8.14.post1-py3-none-any.whl
Algorithm Hash digest
SHA256 fe3f51f630ee3803f233f1aa3cb290843656b8dadda104732b1d987bf7ccb41e
MD5 f88aaf0a390049e12c41e21dbac3816c
BLAKE2b-256 855047cd5e08721a0a6c55607c46ee7fdd267c3c004f4067dddc513c5687f2f0

See more details on using hashes here.

Release history Release notifications | RSS feed

2026.8.21

2 files

This release

2026.8.14.post1 This release

2 files

2026.8.14

2 files

2026.7.29

2 files

2026.7.2

2 files

2026.7.1

2 files

2026.6.20

2 files

2026.6.19

2 files

2026.6.13

2 files

2026.6.3

2 files

2026.5.29

2 files

2026.5.26

2 files

2026.5.22

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page