Sign Up for Free

RunKit +

Try any Node.js package right in your browser

This is a playground to test code. It runs a full Node.js environment and already has all of npm’s 400,000 packages pre-installed, including husl with all npm packages installed. Try it out:

var husl = require("husl")

This service is provided by RunKit and is not affiliated with npm, Inc or the package authors.

husl v6.0.6

Human-friendly HSL


Identical functionality is provided under a new name: HSLuv.

Package: Documentation:


husl.toHex(hue, saturation, lightness)

hue is a number between 0 and 360, saturation and lightness are numbers between 0 and 100. This function returns the resulting color as a hex string.

husl.toRGB(hue, saturation, lightness)

Like above, but returns an array of 3 numbers between 0 and 1, for the r, g, and b channel.


Takes a hex string and returns the HUSL color as array that contains the hue (0-360), saturation(0-100) and lightness(0-100) channel. Note: The result can have rounding errors. For example saturation can be 100.00000000000007

husl.fromRGB(red, green, blue)

Like above, but red, green and blue are passed as numbers between 0 and 1.

Use husl.p.toHex, husl.p.toRGB, husl.p.fromHex and husl.p.fromRGB for the pastel variant (HUSLp). Note that HUSLp does not contain all the colors of RGB, so converting arbitrary RGB to it may generate invalid HUSLp colors.


RunKit is a free, in-browser JavaScript dev environment for prototyping Node.js code, with every npm package installed. Sign up to share your code.
Sign Up for Free