Socket
Socket
Sign inDemoInstall

chalky

Package Overview
Dependencies
0
Maintainers
1
Versions
15
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    chalky

Like chalk.js, but smaller and with fewer features


Version published
Maintainers
1
Install size
7.06 kB
Created

Readme

Source

npm version

npm i chalky / yarn add chalky

chalky

Table of Contents


About

Like chalk with fewer features, smaller in size (772 bytes), and self-contained (zero dependencies). Think of chalky like a 'stripped down', basic version of chalk..

chalky aims to provide a chalk-like experience, but for the most basic of console color features. Simple and small. 'Cheaply' add color to your console without worrying about the size of node_modules.

We're not quite hardened chalk, but we're still chalky :smirk:


Demos

Chaining

  • Like chalk, chain methods together to change the foreground color, background color, add formatting (italic, bold, underline, etc..), for unique color/formatting combinations.
const chalky = require('chalky');

console.log(
  chalky.italic.bgBlack.red.bold("Lorem ipsum dolor sit amet")
);
  • Output: demo

Color priority in chain

  • The last color in the chain is what gets used:
const chalky = require('chalky');

// This line..
const a = chalky.red.green.blue.bgRed.bgBlack.bgYellow("Lorem ipsum dolor sit amet");
// ...is equivalent to this line
const b = chalky.blue.bgYellow("Lorem ipsum dolor sit amet");

console.log(`This:         ${a}`);
console.log(`Should equal: ${b}`);
  • Output: demo

const chalky = require('chalky');

// This line..
const a = chalky.red.blue("Lorem ipsum dolor sit amet");
// ...is equivalent to this line
const b = chalky.blue("Lorem ipsum dolor sit amet");

console.log(`This:         ${a}`);
console.log(`Should equal: ${b}`);
  • Output: demo

Rainbow

  • Use chalky.rainbow('Some string') to 'rainbowify' a string
const chalky = require('chalky');

console.log(
  chalky.rainbow("Lorem ipsum dolor sit amet")
);
  • Output: demo

Properties

  • Foreground Colors:
    • black
    • red
    • green
    • yellow
    • blue
    • magenta
    • cyan
    • white
  • Background Colors:
    • bgBlack
    • bgRed
    • bgGreen
    • bgYellow
    • bgBlue
    • bgMagenta
    • bgCyan
    • bgWhite
  • Formatting:
    • bold
    • light
    • italic
    • underline
    • blink
    • inverse
    • hidden

Why?

Two reasons...

I wanted to understand:

  • How chalk was able to use properties with the same name as both a getter and method on the same object
    • For example, you can do chalk.blue('foo'); and chalk.blue.bold('foo'); (.blue is being used as both a method and getter)
  • How chalk was able to chain these properties/methods/getters

While modified, some of the code in this repo may resemble chalk as I followed the same logic.

Keywords

FAQs

Last updated on 16 Apr 2020

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc