3.2.0 ā€¢ Published 7 days ago

ansis v3.2.0

Weekly downloads
-
License
ISC
Repository
github
Last release
7 days ago

node Test codecov node

Colorize terminal with ANSI colors & styles, smaller and faster alternative to Chalk.

Usage example

import ansis, { red, green, black, ansi256, hex } from 'ansis';

ansis.cyan('path/to/file')
green('Succeful!')
red`Error!`
black.bgYellow`Warning!`
ansi256(214)`Orange`
hex('#E0115F').bold.underline('Hello TrueColor!')

šŸš€ Install and Quick Start\ šŸ“– Read full docs on GitHub

šŸ† Compare & Benchmark

See the features comparison and benchmarks of most popular terminal colors libraries:\ ansis chalk kleur kolorist colors.js colorette picocolors ansi-colors cli-color colors-cli.

šŸ’” Highlights

ANSI demo

Open in StackBlitz

  • Supports ESM, CommonJS, TypeScript, Bun, Deno, Next.JS
  • Standard API compatible with Chalk
  • Default and named import import ansis, { red, green, bold, underline } from 'ansis'
  • Chained syntax red.bold.underline('text')
  • Nested template strings red`RED text ${green`GREEN text`} RED text`
  • Base ANSI styles dim bold italic underline strikethrough
  • Base ANSI 16 colors red`Error!` redBright`Error!` bgRed`Error!` bgRedBright`Error!`
  • ANSI 256 colors fg(56)`violet` bg(208)`orange`
  • TrueColor (RGB, HEX) rgb(224, 17, 95)`Ruby`, hex('#96C')`Amethyst`
  • Fallback to supported color space: TrueColor ā†’ 256 colors ā†’ 16 colors ā†’ no colors
  • ANSI codes as open and close properties `Hello ${red.open}World${red.close}!`
  • Strip ANSI codes method ansis.strip()
  • Correct style break at the end of line when used \n in string
  • Detect color support using ansis.isSupported() method
  • Supports CLI NO_COLOR FORCE_COLOR --no-color --color
  • Doesn't extend String.prototype
  • Zero dependencies

License

ISC