colorette
    TypeScript icon, indicating that this package has built-in type declarations

    2.0.19 • Public • Published

    🌈Colorette

    Easily set your terminal text color & styles.

    • No dependecies
    • Automatic color support detection
    • Up to 2x faster than alternatives
    • TypeScript support
    • NO_COLOR friendly
    • Node >= 10

    Upgrading from Colorette 1.x?

    Quickstart

    import { blue, bold, underline } from "colorette"
    
    console.log(
      blue("I'm blue"),
      bold(blue("da ba dee")),
      underline(bold(blue("da ba daa")))
    )

    Here's an example using template literals.

    console.log(`
      There's a ${underline(blue("house"))},
      With a ${bold(blue("window"))},
      And a ${blue("corvette")}
      And everything is blue
    `)

    You can also nest styles without breaking existing color sequences.

    console.log(bold(`I'm ${blue(`da ba ${underline("dee")} da ba`)} daa`))

    Need to override terminal color detection? You can do that too.

    import { createColors } from "colorette"
    
    const { blue } = createColors({ useColor: false })
    
    console.log(blue("Blue? Nope, nah"))

    Installation

    npm install colorette

    API

    <color>()

    See all supported colors.

    import { blue } from "colorette"
    
    blue("I'm blue") //=> \x1b[34mI'm blue\x1b[39m

    createColors()

    Override terminal color detection via createColors({ useColor }).

    import { createColors } from "colorette"
    
    const { blue } = createColors({ useColor: false })

    isColorSupported

    true if your terminal supports color, false otherwise. Used internally, but exposed for convenience.

    Environment

    You can override color detection from the CLI by setting the --no-color or --color flags.

    $ ./example.js --no-color | ./consumer.js

    Or if you can't use CLI flags, by setting the NO_COLOR= or FORCE_COLOR= environment variables.

    $ NO_COLOR= ./example.js | ./consumer.js

    Supported colors

    Colors Background Colors Bright Colors Bright Background Colors Modifiers
    black bgBlack blackBright bgBlackBright dim
    red bgRed redBright bgRedBright bold
    green bgGreen greenBright bgGreenBright hidden
    yellow bgYellow yellowBright bgYellowBright italic
    blue bgBlue blueBright bgBlueBright underline
    magenta bgMagenta magentaBright bgMagentaBright strikethrough
    cyan bgCyan cyanBright bgCyanBright reset
    white bgWhite whiteBright bgWhiteBright
    gray

    Benchmarks

    npm --prefix bench start
      chalk         1,786,703 ops/sec
      kleur         1,618,960 ops/sec
      colors          646,823 ops/sec
      ansi-colors     786,149 ops/sec
      picocolors    2,871,758 ops/sec
    + colorette     3,002,751 ops/sec

    Acknowledgments

    Colorette started out in 2015 by @jorgebucaran as a lightweight alternative to Chalk and was introduced originally as Clor. Our terminal color detection logic borrows heavily from @sindresorhus and @Qix- work on Chalk. The idea of slicing strings to clear bleeding sequences was adapted from a similar technique used by @alexeyraspopov in picocolors. Thank you to all our contributors! <3

    License

    MIT

    Install

    npm i colorette

    DownloadsWeekly Downloads

    22,767,476

    Version

    2.0.19

    License

    MIT

    Unpacked Size

    17 kB

    Total Files

    6

    Last publish

    Collaborators

    • jorgebucaran