Giter Site home page Giter Site logo

material-palette's Introduction


Material Palette Generator


CI NPM Coveralls branch

Generates material palettes for your colors

Given an input color it calculates its palette approaching the logic of Google Material Design Color Palettes.

Since the algorithm behind their generation is not (yet) known this module approximates the colors values.

It works everywhere: browsers, node, and so on.

Install

With npm do:

npm install material-palette

API

This module exports a single function, the material palette generator.

materialpalette({ h: number, s: number, l: number })

  • It takes an object containing the h, s, and l fields

    • The field h must be a numeric into [0, 360].

    • The fields s and l must be numerics into [0, 100].

  • It returns an object containing all the 14 palette variants (e.g., 50, 100, 200, ..., A700)

As always, more details reading the tests ...

Example

Suppose you want to generate a material palette for hsl(87, 100%, 22%) color (i.e. #3E7000).

First of all import the generator.

var materialpalette = require('materialpalette') // node
import materialpalette from 'materialpalette' // ES2015
window.materialpalette // browsers

Then use it.

var ciao = materialpalette({ h: 87, s: 100, l: 22 })

Which results in the following object ...

{
  '50': { h: 87, s: 100, l: 74 },
  '100': { h: 87, s: 100, l: 59 },
  '200': { h: 87, s: 100, l: 48 },
  '300': { h: 87, s: 100, l: 34 },
  '400': { h: 87, s: 100, l: 28 },
  '500': { h: 87, s: 100, l: 22 },
  '600': { h: 87, s: 100, l: 16 },
  '700': { h: 87, s: 100, l: 10 },
  '800': { h: 87, s: 100, l: 4 },
  '900': { h: 87, s: 100, l: 0 },
  'A100': { h: 92, s: 100, l: 46 },
  'A200': { h: 92, s: 100, l: 38 },
  'A400': { h: 92, s: 100, l: 21 },
  'A700': { h: 92, s: 100, l: 10 }
}

Matching, visually ...

Material Colors Palette for #3E7000

It's cool, isn't it?

License

MIT © Leonardo Di Donato


Analytics

material-palette's People

Contributors

leodido avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

material-palette's Issues

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.