Github url

color-thief

by lokesh

lokesh /color-thief

Grab the color palette from an image using just Javascript. Works in the browser and in Node.

8.8K Stars 1.1K Forks Last release: 11 months ago (v2.3.0) MIT License 172 Commits 9 Releases

Available items

No Items, yet!

The developer of this repository has not created any items for sale yet. Need a bug fixed? Help with integration? A different license? Create a request here:

Color Thief

Grab the color palette from an image using just Javascript.Works in the browser and in Node.

View the demo page for examples, API docs, and more.


Contributing

Project structure

  • build/
    • Simple script that copies and renames files into the /dist folder.
  • cypress/
    • Browsers tests.
  • dist/
    • Generated distribution files created by microbundle package and a couple of files copied via build script.
  • examples/
    • CSS, JS, and Images for the index.html example page.
  • src/color-thief-node.js
    • Source for the Node (commonjs) compatible version of the script.
  • src/color-thief.js
    • Source for the browser (ES6, AMD, Global var) compatible version of the script.
  • src/core.js
    • Functions shared between the node and browser versions of the script.
  • test/
    • Node integration tests. Uses Chai.
  • index.html
    • Example page.

Running tests

Run Cypress integration tests in Chrome browser.

  • npm run dev
    to start local server.
  • npm run test

Adding tests

  • Update
    cypress/test-pages/index.html
    as needed or create a new test page if you need new examples.
  • Add new tests in
    cypress/integration/apis\_spec.js

Making a new release

  • Merge
    dev
    into
    master
  • Pull down
    master
  • Update version number in
    src/color-thief.js
    and
    package.json
  • Run
    npm run build
  • Commit and push built files back up to
    master
  • Create a new Github release along with tag. Naming convention for both
    v2.8.1
  • npm publish

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.