Product guide

ASCII launch screens for CLI apps

Add a memorable text logo to a command-line app while respecting startup speed, accessibility, and narrow terminals.

Why use a text banner?

A CLI banner is part of the product interface. Show it for interactive launches, but keep machine-readable output clean and provide a quiet or JSON mode for automation.

Render a short product name once and store the resulting text with the application. Do not load a full font engine at every launch unless users need dynamic text.

A safe starting pattern

if (process.stdout.isTTY && !flags.quiet) {
  console.log(BANNER);
}

// Skip decorative output in pipes and automation.

Only print decoration interactively

Check whether standard output is attached to a terminal. Commands used in pipes, tests, or JSON workflows should return structured output without a decorative preamble.

Store the finished banner

Once the product name is stable, copy the generated result into a constant or text asset. This keeps startup instant and avoids shipping hundreds of fonts with the CLI.

Generate your version

Open the full gallery, enter the final text, set the target width, then copy the output with the wrapper that matches this workflow.