prizm: A haskell library for computing with colors

[ bsd3, graphics, library ] [ Propose Tags ]

Prizm is a library for converting between different color representations and mutating colors (interpolation, lightness, hue, chroma, tint/shade).

[Skip to Readme]


Maintainer's Corner

For package maintainers and hackage trustees


  • No Candidates
Versions [RSS],,,,,,,,,,, 1.0.0, 1.0.1, 1.0.2, 1.0.3, 1.0.4, 1.0.5, 1.1.0, 2.0.0, 2.0.1, 3.0.0 (info)
Change log CHANGES
Dependencies base (>=4.5 && <5), text (>= [details]
License BSD-3-Clause
Copyright (c) 2013 Parnell Springmeyer
Author Parnell Springmeyer
Category Graphics
Home page
Bug tracker
Source repo head: git clone
Uploaded by ParnellSpringmeyer at 2013-06-28T14:35:47Z
Distributions NixOS:3.0.0
Downloads 10583 total (87 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs uploaded by user
Build status unknown [no reports yet]

Readme for prizm-

[back to package description]


Prizm is a haskell library for dealing with colors. Please contribute!

My inspiration for writing this was Sass and Bourbon, both implement interesting color handling functions for use in stylesheets and I wanted the same thing for use in Clay (also for Bentonite).

Colour Module

There is some overlap with the Haskell Colour Module that already exists; however, this library is filling a couple of needs the other doesn't satisfy.

Supported Algorithms

  • sRGB <-> CIE XYZ
  • CIE XYZ <-> CIE L*ab
  • CIE L*ab <-> CIE L*Ch

Supported Functions

  • Color interpolation
  • Tinting / Darkening
  • Lightness
  • Hue
  • Chroma/Saturation

All of these functions operate on color within the CIE L*Ch representation. The percentage values may range between -100 and 100.

General Color Formulas, Data, and Algorithms

CIE Conversion Mathematics

Conversion Algorithm Sources

Good list of useful color manipulation