clorox

Node.js library for colorizing text using ANSI escape sequences.

  • clorox

Downloads in past

Stats

StarsIssuesVersionUpdatedCreatedSize
clorox
1,57782.2.06 years ago6 years agoMinified + gzip package size for clorox in KB

Readme

Clorox
Codecov
Clorox is a Node.js library for colorizing text using ANSI escape sequences.
  • All-in-one — Not broken into a dozen modules that only work together.
  • Eco-friendly — No modifications were made to the String.prototype in the making of this package.
  • It Just Works™ — Auto-detects color support and degrades gracefully without contaminating your terminal with broken escape codes.

Installation

npm i clorox

Usage

const { Clorox: x } = require("clorox")

Write with color.
console.log(x.red("Bonjour!"))

Chain expressions.
console.log(x.red.underline("Hello") + x.blue.bold("World") + "!")

Compose a color expression using template literals.
console.log(`
  Oil: ${x.bgBlack.white(42)}
  Gold: ${x.yellow(150)}
  Lumber: ${x.green(10000)}
`)

Nest expressions to reuse styles.
console.log(`Normal ${x.bold(`Bold ${x.blue("Bold/Blue")} Bold`)} Normal`)

Use string substitution for easier formatting.
console.log(x.green("Total: $%f"), 1.99)

Styles

Clorox exports ANSI escape codes which you can use for manually styling console output. They can be useful for testing your actual output matches the expected output.
Each style has an open, close and strip property. The strip property is useful for removing the previously closed escape code within a nested expression.
const { STYLES } = require("clorox")

console.log(`${STYLES.red.open}Red${STYLES.red.close}`)

Available Styles

| Colors | Background Colors | Modifiers | | ------- | ----------------- | ----------------- | | black | bgBlack | dim | | red | bgRed | bold | | green | bgGreen | hidden | | yellow | bgYellow | italic | | blue | bgBlue | underline | | magenta | bgMagenta | inverse | | cyan | bgCyan | strikethrough | | white | bgWhite | reset | | gray | | |

License

Clorox is MIT licensed. See LICENSE.