An immutable Javascript color object that works in the browser and NodeJS with support for RGB, HSV, HSL and CMYK. Complete with alpha channel support in all color spaces and implicit color space conversion when getting/modifying a color channel from a different color space.