TinyColor
Fast, small color manipulation and conversion for JavaScript
...It allows many forms of input, while providing color conversions and other color utility functions. It has no dependencies. The string parsing is very permissive. It is meant to make typing a color as input as easy as possible. All commas, percentages, parenthesis are optional, and most input allow either 0-1, 0%-100%, or 0-n (where n is either 100, 255, or 360 depending on the value). HSL and HSV both require either 0%-100% or 0-1 for the S/L/V properties. The H (hue) can have values between 0%-100% or 0-360. RGB input requires either 0-255 or 0%-100%.