npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

colors-convert

v1.4.1

Published

A simple color library

Downloads

7,262

Readme


Using colors-convert you can:

  • read colors in different formats
  • analyze and manipulate colors
  • convert colors into different formats
  • give a name to a color
  • mix colors
  • create random colors.

How to use

yarn add colors-convert

or

npm install --save colors-convert

API overview

Go here to take a look at the complete API.

Color formats

Different color formats are supported: hex, rgb, rgba, hsl, hsla and cmyk.

Hex

A valid hex color can be:

  • #rrggbb[aa](6/8-digit, long form)
  • #rgb[a] (3/4-digit, short form) with r, g, b, a in [0-9a-fA-F].

Rgb

A valid rgb color is an object like this {r, g, b} with r, b, g numeric values in [0, 255].

Rgba

A valid rgba color is an object like this {r, g, b, a} with r, g, b numeric values in [0, 255] and a in [0, 1].

Hsl

A valid hsl color is an object like this {h, s, l} with:

  • h (hue): [0-359]°
  • s (saturation): [0-100]%
  • l (lightness): [0-100]%.

Hsla

A valid hsl color is an object like this {h, s, l} with:

  • h (hue): [0-359]°
  • s (saturation): [0-100]%
  • l (lightness): [0-100]%
  • a (alpha): [0-1].

Cmyk

A valid cmyk color is an object like this {c, m, y, k} with c, m, y, k numeric values in [0, 100].


Conversion

You can convert a color in any format to any other supported format.

| from \ to | Hex | Rgb | Rgba | Hsl | Hsla | Cmyk | | :-------: | :----------: | :----------: | :-----------: | :----------: | :-----------: | :-----------: | | Hex | \ | hexToRgb | hexToRgba | hexToHsl | hexToHsla | hexToCmyk | | Rgb | rgbToHex | \ | rgbToRgba | rgbToHsl | rgbToHsla | rgbToCmyk | | Rgba | rgbaToHex | rgbaToRgb | \ | rgbaToHsl | rgbaToHsla | rgbaToCmyk | | Hsl | hslToHex | hslToRgb | hslToRgba | \ | hslToHsla | hslToCmyk | | Hsla | hslaToHex | hslaToRgb | hslaToRgba | hslaToHsl | \ | hslaToCmyk | | Cmyk | cmykToHex | cmykToRgb | cmykToRgba | cmykToHsl | cmykToHsla | \ | | Color | colorToHex | colorToRgb | colorToRgba | colorToHsl | colorToHsla | colorToCmyk |

Specific functions by color format

Then there are more specific color format functions. You can also convert a Color to a redeable string format or a CSS string format. Go here to take a look at the complete API.

Other useful functions

  • name(color: Color): string: given a color (hex, rgb, rgba, hsl, hsla, cmyk), it returns the name of that color. It works using a list of 18315 unique color names.

  • mix(colors: Color[], weights?: number[]): rgb: mix two or more colors based on their weights.

  • randomHex(): HEX: return a random hex.

🎉 What's new in 1.3.0

  • [add] add the following functions: colorToHex, color2rgba, rgbaToHex, cmykToRgba, cmykToHsla, hexToHsla, rgbToHsla, rgbaToHsla, hslToRgba, colorToCmyk, colorToHsl, hslToHsla, colorToHsla, hslaStringToObject, hexToRgb, hexToRgba, shortToLongHex
  • [add] add hsla color format
  • [add] test coverage > 97%
  • [add] add api page
  • [add] add a new logo
  • [change] set as deprecated the following functions: color2string, color2cssString, hex2rgbOrRgba, hex2rgba, hex2hexWithAlpha, hex2cmyk, hex2hsl, rgb2hex, rgb2cmyk, rgb2hsl, rgb2rgba, color2rgb, rgbString2Object, rgba2rgb, rgbaString2Object, cmyk2hex, cmyk2rgb, cmyk2hsl, cmykString2Object, hsl2hex, hsl2rgb, hsl2cmyk, hslString2Object, getRandomColor,
  • [change] rgb2rgba has optional alpha parameter
  • [change] ColorName type: is no more a string but an object with name, hex and rgb
  • [fix] #00000 is not a valid hex color

Go here to see the CHANGELOG.

License

MIT © Ilaria Venturini