This site is being rebuilt as documentation. Performance figures shown on the previous site are withdrawn. Figures will be published on one evidence page, generated from one file. Each figure there will name its dataset, its size (n), and whether that data was used to fit, tune or design the model.
Helmlab
Helmlab defines color spaces for generating colors (gradients, palettes, gamut mapping) and for measuring color differences, and publishes their reference code.
Current definition: Helmlab 2026
Helmlab 2026 is defined by the outputs of helmlab 1.0.0 on npm and PyPI. helmlab 1.0.1 has identical outputs; only its JavaScript speed and documentation changed.
| Identifier | What it names |
|---|---|
helmgen | GenSpace in Lab coordinates, for generating colors |
helmgenlch | GenSpace in LCh coordinates (lightness, chroma, hue) |
helmlab-metric | MetricSpace, for measuring color differences |
ΔE helmlab | Color difference computed from helmlab-metric coordinates |
A specification and test vectors for Helmlab 2026 are planned.
Install
npm i helmlab
pip install helmlab
API reference: API.md. Changes by version: CHANGELOG.md.
Other implementations
These libraries are maintained outside Helmlab: Color.js, ColorAide and color-space.
Known issues
- Color.js 0.7.1 and ColorAide 8.13.1 implement
helmlab-metricwithout the neutral-correction step, so their a and b values differ from those of thehelmlabpackage. color-space 3.5.0 includes the step. - The paper's description of the neutral-correction step differs from the released code; see helmlab#4.
Links
- Source: github.com/Grkmyldz148/helmlab
- Packages: helmlab on npm, helmlab on PyPI, postcss-helmlab on npm
- Paper: arXiv 2602.23010 (v3)
- Organization: github.com/helmlab-space
- Questions and bug reports: open an issue in the helmlab repository.