awinogradov / color-layer

Get color-layer

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

color-layer

Generate colors for a UI. The function returns two HSL values for a given hue and layer number (for light mode and for dark mode). Designed to generate up to 10 brightness levels are enough to build most of the components such as inputs, buttons, labels, etc.

The function returns two hsl values: for light mode and for dark mode:

colorLayer(h=194, layer=3)
// ["hsl(194, 90%, 94%)", "hsl(194, 80%, 8%)"]

Colors work well with white (#FFFFFF) and black (#000000) backgrounds.

The goal of the library is to avoid using transparency in UI elements.

Levels are organized from the most subtle color to more vivid color (where 1 — almost background-color, 10 — the most vivd/rich color).

Level 0 returns the absolute/normalized color of a given hue, with values of saturation == 100 and lightnes == 50% for the light mode and 40% for the dark mode.

This is a part of the rb_colorize project (see demo).

Usage

RunKit

Install

npm i color-layer

NPM package: https://www.npmjs.com/package/color-layer

Import

const colorLayer = require("color-layer")

Examples

// Generate stroke color:
const getStroke = (lvl) => colorLayer.default(lvl, 9);

// Generate background color:
const getBkg = (lvl) => colorLayer.default (lvl, 3);

console.log('InProgress', getStroke(194), getBkg(194));
// "InProgress"
// ["hsl(194, 90%, 55%)", "hsl(194, 80%, 47%)"]
// ["hsl(194, 90%, 94%)", "hsl(194, 80%, 8%)"]


About

Get color-layer

License:MIT License


Languages

Language:TypeScript 100.0%