TypeScript ISC

react-colorpickr

A themeable colorpicker with HSL and RGB support for React

M

mapbox

Dernière activité 13 août 2026
mapbox/react-colorpickr

206

étoiles

35

forks

1

issues ouvertes

colorcolor-pickercolorpickerhslhslareactrgbrgbargba-values

Ce README est souvent en anglais.

A colorpicker for React

npm version Build Status

Demo

Install

npm install @mapbox/react-colorpickr

You'll also want to include a copy of colorpickr.css in your code.

<link href='react-colorpickr.css' rel='stylesheet' />

Usage

import React from 'react'
import ColorPicker from '@mapbox/react-colorpickr'

function Example() {
  return (
    <ColorPicker onChange={console.log} />
  )
}

Required properties

onChange (color) => void

Value should be a function and is called whenever a color is updated from the colorpicker. Returns a color object.

Optional properties

theme Object<[key: string]: string>

By default, react-colorpickr depends on Assembly and the CSS located in dist/colorpickr.css. You can however, override it thanks to react-themeable which react-colorpickr uses internally. See the properties used and the class name values in theme.ts.

initialValue string

Accepts any valid css color. If this isn't provided, a default color is used.

colorSpace 'hsl' | 'rgb' | 'hex'

Initializes what should be displaed in the bottom color input. Defaults to hex.

mode 'disc' | 'values'

Initializes which view tab is active. Defaults to disc.

eyedropper boolean

When true, an eyedropper is added to the top-right of the interface. Defaults to true.

reset boolean

When true, a reset button is added that when pressed, reverts to the initialized color. Defaults to true.

alpha boolean

When true, a alpha range slider and input is provided. Defatuls to true.

mounted (ColorPickr) => void

To use internal methods from react-colorpickr, mounted provides access to the components instance. This is helpful for calling methods like overrideValue that can manually set a new color.

const [instance, setInstance] = useState(null);

const override = () => {
  instance.overrideValue('red');
};

render() {
  <>
    <ColorPickr mounted={picker => setInstance(picker)} onChange={console.log} />
    <button onClick={override}>Override</button>
  </>
}

discRadius number

Optional property to provide a different disc radius for selection. Helpful if you are re-themeing the interface. Defaults to 18.

readOnly boolean

If true the colorpicker will render in a readonly state with values clearly shown and selectable, but not editable. Defaults to false.

Developing

npm install & npm start

Then open http://localhost:9966 in browser.

Projets similaires

🎨 Pickr - A simple, multi-themed, responsive and hackable Color-Picker library. No dependencies, no jQuery. Compatible with all CSS Frameworks e.g. Bootstrap, Materialize. Supports alpha channel, rgba, hsla, hsva and more!

JavaScriptcolorcolor-palettecolor-picker
Ssimonwep
4,5 k étoiles292

🎨 Is a tiny color picker widget component for React apps.

TypeScriptchromecolorcolor-picker
Uuiwjs
569 étoiles128

🎨 A tiny (2,8 KB) color picker component for React and Preact apps

TypeScripta11ycolorcolor-picker
Oomgovich
3,6 k étoiles121