Skip to main content
meow:ui lets your code emit status lines through meow’s terminal engine — the same Floof aesthetic the CLI uses, with the same graceful degradation to plain text in pipes and CI.
import { ui } from "meow:ui";

ui.purr("server started");      // success
ui.pounce("building…");         // progress / work-in-progress
ui.hiss("something went wrong"); // error

API

function purr(body: string): void;   // success
function hiss(body: string): void;   // error
function pounce(body: string): void; // progress / WIP

const ui: { purr: typeof purr; hiss: typeof hiss; pounce: typeof pounce };
You can import the named functions or the ui object — they’re the same.
import { purr, hiss, pounce } from "meow:ui";
purr("done");

The three tones

FunctionToneUse for
purrsuccessa completed step, a healthy result
pounceprogresswork in progress, a step starting
hisserrora failure or warning worth attention
These names are meow’s vocabulary throughout the CLI — a successful meow install purrs, a long step pounces, and an error hisses. Using meow:ui in your own scripts keeps their output consistent with the rest of the toolchain, and it automatically goes plain (no color, no glyphs) when piped or running under CI.

meow:test

The built-in test runner API.