Skip to content
Devix Open Source

Changelog

Every release of Color Picker, newest first. Breaking changes are flagged.

v1.0.0

12 Sep 2026

First release.

Added

  • A saturation and brightness square built as a role="group" holding one real <input type="range"> per axis, so each has an honest value and a screen reader hears both. Either axis takes every arrow key; shift moves ten.
  • Hue and opacity as real range inputs, with the browser's own keyboard behaviour and focus ring.
  • A text field that takes hex (3, 4, 6 or 8 digits, with or without the #), rgb(), hsl(), oklch() and the CSS named colours, and applies on Enter without submitting the form around it.
  • OKLCH as a first-class notation, converted with Ottosson's matrices and checked against his published figures for the sRGB primaries.
  • A gamut warning: a colour OKLCH can name but sRGB cannot show is flagged and announced rather than silently moved.
  • WCAG 2.1 contrast against a named background, with translucent colours composited first, and a rating of AAA, AA, AA large or fail.
  • Hue and saturation held apart from the colour, so dragging through white or black and back keeps the hue that went in.
  • Eyedropper where the browser has one, a copy button that falls back to selecting the value, and swatches as labelled buttons.
  • Mounting onto an existing <input>: it keeps its name, carries the value, and fires input and change, so a plain form posts the colour. destroy() hands it back untouched.
  • parse, parseOklch, format, contrast, rate, readableOn, over and the conversions, exported for use without the widget.
  • React, Vue, Svelte and <dx-color> entries over one DOM core, plus a CDN build.
  • Theming through CSS variables, classNames on every part, theme: 'auto', a @layer devix stylesheet, RTL and forced-colors support.
  • 6.2 kB gzip, zero dependencies.