iWantHue
What it is
iWantHue is a free palette generator and refinement tool for data scientists working with data visualization. It creates sets of colors designed to be distinct, with controls for hue, chroma, and lightness. The generator calculates colors in CIE Lab and uses HCL to define those controls. Users can distribute colors with either k-means clustering or force-vector repulsion, then sort palette colors by difference, hue, chroma, lightness, or at random. An option can improve palettes for colorblind users. The web interface exports palettes as HEX, RGB, HCL, or LAB JSON, as CSS color lists, and as JavaScript settings. Developers can install the JavaScript package with npm for Node.js or browser use, generate palettes in JavaScript, and supply a seed to reproduce the same palette from a data attribute. The npm module also includes precomputed palettes from 2 to 15 colors, including colorblind alternatives. Very large palettes can contain similar colors when the selected color space is too constrained, though the first colors are sorted for the greatest possible distinction. The Fancy preset produces generic palettes up to 10 colors because its chroma and lightness ranges are narrow. The tool is available through a web interface and JavaScript package; its site directs users to GitHub Issues for help and bug reports.
For and against
For
- Constrain palettes by hue, chroma, and lightness
- Offers two methods to distribute palette colors
- Includes a colorblind improvement option
- Exports HEX, RGB, HCL, LAB JSON, CSS, and JavaScript
- Seeded generation can reproduce a palette
- Free to use
Against
- Fancy preset is limited to generic palettes of up to 10 colors
- Large palettes can contain similar colors in constrained color spaces
- Help and bug reports are directed to GitHub Issues
Who it suits
iWantHue suits data scientists who need to generate or refine color palettes for data visualization. Developers can also use its JavaScript package in Node.js or browser projects.
Getting started
- Open the iWantHue web interface
- Set hue, chroma, or lightness constraints
- Generate a palette using k-means clustering or force-vector repulsion
- Refine the palette by sorting its colors
- Export the palette in a supported format
- For code use, install the JavaScript package with npm
Limits to know
The Fancy preset produces generic palettes of up to 10 colors because of its narrow chroma and lightness ranges. Very large palettes may include similar colors when the selected color space is constrained.
The verdict
Choose iWantHue if you need a free tool for generating distinct data visualization palettes, refining their order, or using them in JavaScript. Its palette controls and colorblind option support several workflows. Look elsewhere if you need larger palettes that remain distinct within a constrained color space.
Questions
Does iWantHue cost anything?
No. iWantHue is free.
What can I control when generating a palette?
You can constrain hue, chroma, and lightness, and choose k-means clustering or force-vector repulsion to distribute colors.
Which export formats are available?
The web interface provides HEX, RGB, HCL, and LAB JSON, CSS color lists, and JavaScript settings.
Can I use iWantHue in a JavaScript project?
Yes. The JavaScript package can be installed with npm for Node.js or browser use. Its generator accepts a seed to reproduce a palette from a data attribute.
Does iWantHue include colorblind options?
Yes. The interface has an option to improve palettes for colorblind users, and the npm module includes precomputed colorblind alternatives.
Where can I get help?
The site directs users to GitHub Issues for help, bug reports, or contact.
Facts on the record
- Accessibility
- The interface includes an option to improve palettes for colorblind users.medialab.github.io · read 10 Oct 2026
- Audience
- The project describes itself as a tool for data scientists and explains its palette use in data visualization.medialab.github.io · read 9 Oct 2026
- Availability
- Sciences Po médialab describes its digital tools as free, and lists I Want Hue as a web interface for generating and refining color palettes.medialab.sciencespo.fr · read 9 Oct 2026
- Color algorithms
- Palette generation uses k-means or force-vector repulsion algorithms to distribute colors.github.com · read 10 Oct 2026
- Color blindness
- The generator includes a colorblind improvement option, and its JavaScript settings list colorblind distance functions.medialab.github.io · read 9 Oct 2026
- Color computation
- The generator computes colors in CIE Lab and uses HCL to set color constraints.medialab.github.io · read 9 Oct 2026
- Color controls
- Users can constrain palettes by hue, chroma, and lightness.medialab.github.io · read 10 Oct 2026
- Developer use
- The project can be installed for Node.js and browser use with npm install iwanthue.github.com · read 10 Oct 2026
- Exports
- The interface provides palette output as HEX, RGB, HCL, and LAB JSON, CSS color lists, and JavaScript settings.medialab.github.io · read 10 Oct 2026
- Generation methods
- It offers k-means clustering and force-vector repulsion algorithms to distribute colors.medialab.github.io · read 9 Oct 2026
- Integrations
- The repository documents use in JavaScript projects through Node.js and browser npm packages.github.com · read 10 Oct 2026
- JavaScript use
- The project says it can be installed with npm for Node.js and the browser, and documents palette generation in JavaScript.github.com · read 9 Oct 2026
- Large palettes
- When the requested palette is too large for the selected color space, some colors may be similar, though the first colors are sorted to be the most distinct possible.medialab.github.io · read 9 Oct 2026
- Notable limit
- The Fancy preset produces generic palettes up to 10 colors, and the page says its narrow chroma and lightness ranges limit palette size.medialab.github.io · read 10 Oct 2026
- Palette controls
- Users can constrain palettes by hue, chroma, and lightness.github.com · read 9 Oct 2026
- Palette refinement
- The interface offers options to sort colors by difference, hue, chroma, lightness, or randomly.medialab.github.io · read 10 Oct 2026
- Perceptual model
- The project uses CIE Lab for computation and HCL to set color constraints.github.com · read 10 Oct 2026
- Precomputed palettes
- The npm module includes precomputed palettes from 2 to 15 colors, including colorblind alternatives.github.com · read 10 Oct 2026
- Purpose
- iWantHue generates and refines palettes of optimally distinct colors for data scientists.medialab.github.io · read 10 Oct 2026
- Reproducibility
- The JavaScript generator accepts a seed to produce the same palette each time from a data attribute.github.com · read 9 Oct 2026
- Security
- The pages reviewed provide no security or compliance claims.medialab.github.io · read 9 Oct 2026
- Security and compliance
- The maker's product and repository pages opened here do not state security certifications or compliance claims.medialab.github.io · read 10 Oct 2026
- Support
- The maker directs users to GitHub Issues for help, bug reports, and requests.medialab.github.io · read 10 Oct 2026