Color Thief

Modern color palette extraction from images

A modern JavaScript library for extracting dominant colors and color palettes from images. Uses advanced algorithms and the HTML5 canvas API for fast, accurate color analysis.

View on GitHub 📝 Original Blog Post

🎨 Advanced Algorithm

Uses the modified median cut quantization (MMCQ) algorithm for accurate color extraction

⚡ Modern Performance

Built with ES6+ features, optimized for modern browsers with excellent performance

📱 Responsive Design

Works seamlessly across desktop, tablet, and mobile devices

🔗 Easy Integration

Simple API that works with any image source - upload, URL, or canvas element

Usage Example

import { ColorThief } from './color-thief.js';

// Get dominant color
const dominantColor = ColorThief.getDominantColor(imageElement);
// Returns: [r, g, b] array

// Get color palette
const palette = ColorThief.getPalette(imageElement, 8);
// Returns: [[r,g,b], [r,g,b], ...] array

// Convert to hex
const hexColor = ColorThief.rgbToHex(dominantColor);
// Returns: "#ff5733"