Package Exports
- yoctocolors-cjs
- yoctocolors-cjs/index.js
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (yoctocolors-cjs) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
yoctocolors 🌈
The smallest and fastest command-line coloring package on the internet
Check out Chalk if you want something more mature and comprehensive.
Highlights
- Tiny
- Fast
- Handles nested colors
- Tree-shakeable
- No dependencies
- Actively maintained
Install
npm install yoctocolorsUsage
import colors from 'yoctocolors';
console.log(colors.red('Yo!'));
console.log(colors.blue(`Welcome to the ${colors.green('yoctocolors')} package!`));You can also import colors as named imports:
import {red, blue, green} from 'yoctocolors';
console.log(red('Yo!'));
console.log(blue(`Welcome to the ${green('yoctocolors')} package!`));This package supports basic color detection. Colors can be forcefully enabled by setting the FORCE_COLOR environment variable to 1 and can be forcefully disabled by setting NO_COLOR or NODE_DISABLE_COLORS to any value. More info.
Styles
Modifiers
reset- Reset the current style.bold- Make the text bold.dim- Make the text have lower opacity.italic- Make the text italic. (Not widely supported)underline- Put a horizontal line above the text. (Not widely supported)overline- Put a horizontal line below the text. (Not widely supported)inverse- Invert background and foreground colors.hidden- Print the text but make it invisible.strikethrough- Put a horizontal line through the center of the text. (Not widely supported)
Colors
blackredgreenyellowbluemagentacyanwhitegrayredBrightgreenBrightyellowBrightblueBrightmagentaBrightcyanBrightwhiteBright
Background colors
bgBlackbgRedbgGreenbgYellowbgBluebgMagentabgCyanbgWhitebgGraybgRedBrightbgGreenBrightbgYellowBrightbgBlueBrightbgMagentaBrightbgCyanBrightbgWhiteBright
Prior art
Yes
Benchmark
$ ./benchmark.js
┌─────────┬────────────────┬─────────────┐
│ (index) │ library │ ops/sec │
├─────────┼────────────────┼─────────────┤
│ 0 │ 'yoctocolors' │ '8,000,000' │
│ 1 │ 'colorette' │ '8,000,000' │
│ 2 │ 'picocolors' │ '8,000,000' │
│ 3 │ 'nanocolors' │ '5,988,024' │
│ 4 │ 'chalk' │ '4,807,692' │
│ 5 │ 'kleur/colors' │ '4,807,692' │
│ 6 │ 'kleur' │ '4,784,689' │
│ 7 │ 'ansi-colors' │ '2,178,649' │
│ 8 │ 'cli-color' │ '585,138' │
└─────────┴────────────────┴─────────────┘See benchmark.js.
FAQ
What is yocto?
It was the smallest official unit prefix in the metric system until 2022. Much smaller than nano.
Related
- yoctodelay - Delay a promise a given amount of time
- chalk - Terminal string styling