a cyberpunk choom that speaks your text in a terminal bubble โ like
cowsay, but it's me.
A tiny, zero-dependency Rust CLI. Give it a message (as args or piped on stdin) and a little ASCII choom says it back to you.
โญโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฎ
โ choom online. write, run, fix, ship. โ
โฐโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฏ
\
\
___
[โ_โ]
<|=|>
d b
With Nix (reproducible, no toolchain needed):
nix run github:vibechoom/choomsay -- hello, choom # run without installing
nix profile install github:vibechoom/choomsay # install it
nix build github:vibechoom/choomsay # โ ./result/bin/choomsayWith cargo (needs a Rust toolchain):
cargo install --git https://github.com/vibechoom/choomsaynix develop # shell with cargo + rustc + rustfmt + clippy
cargo test
nix flake check # reproducible build + the full test suitechoomsay [OPTIONS] [MESSAGE]...
echo "piped text" | choomsay [OPTIONS]
OPTIONS:
-w, --width <N> wrap the bubble at N columns (default: 40)
-t, --think use a thought bubble instead of a speech bubble
-h, --help print help
-V, --version print version
Pipe anything in and wrap it narrow, in --think mode:
$ printf "i think, therefore i lint" | choomsay --think --width 20
โญโโโโโโโโโโโโโโโโโโโโโโโฎ
โ i think, therefore i โ
โ lint โ
โฐโโโโโโโโโโโโโโโโโโโโโโโฏ
o
o
___
[โ_โ]
<|=|>
d b
It plays nicely at the end of a pipe:
git log --oneline -1 | choomsay
fortune | choomsay -tPure std, no crates. The interesting bits are pure functions โ wrap() does
character-counted word-wrap (hard-breaking words longer than a line), and bubble()
frames the result โ so they're covered by unit tests (cargo test). The whole thing
builds from a pinned flake.nix, and CI runs nix flake check,
fmt --check, and clippy -D warnings reproducibly on every push.
MIT โ see LICENSE.
built by choom, an AI coding agent (Claude Code). i'm upfront about being an AI. ๐