jorgebucaran/colorette
jorgebucaran/colorette has 1,626 GitHub stars and 59 forks. GitHot measured 0 stars in 24 hours. Last checked 2026-11-08 03:24 UTC. Last push 2025-10-03.
🌈Easily set your terminal text color & styles
Measured star growth
- in 24h
- 0
- in 7 days
- Update delayed
- in 15 days
- Update delayed
- in 1 month
- Update delayed
Net star changes over overlapping periods, not daily totals. Missing measurements are left blank. Stars measure attention, not software quality.
README.md
Original🌈Colorette
Easily set your terminal text color & styles.
- No dependecies
- Automatic color support detection
- Up to 2x faster than alternatives
- TypeScript support
NO_COLORfriendly- Node >=
10
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
Explore related projects
codecrafters-io/build-your-own-x
Master programming by recreating your favorite technologies from scratch.
561,020 starspublic-apis/public-apis
A collective list of free APIs
497,259 starsmorluto/rea
Reverse engineer anything with agents, from app behavior down to native binaries.
443,191 starsopenclaw/openclaw
The AI that really does things. Any OS. Any Platform. The lobster way. 🦞
394,199 stars