??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