VibePalette is a Chrome Extension that lets you extract beautiful color palettes from any image or website on your screen.
- 📸 Instant Capture: Takes a screenshot of your current tab instantly.
- 🎨 Smart Extraction: Uses a hue-diversity algorithm to find the most interesting colors, not just the most dominant ones.
- 🎬 Cinematic Export: Save your palette as a "Wes Anderson" style Title Card with:
- 📏 Double Framing & Symmetric Layout
- 🖋️ Massive Typography for readability
- ⚖️ Smart Row Balancing algorithm
- 🎞️ Vintage Palette & Esthetic
- 💻 Dev-Friendly Exports:
- Copy as CSS Variables (
:root { --palette-1: #... }) - Export as JSON
- Copy as CSS Variables (
- 🔧 Customizable:
- Adjust color count (5-15)
- Choose formats (HEX, RGB, HSL)
- Dark/Light mode support
- ⌨️ Keyboard Shortcuts:
R: RecaptureC: Copy all colorsE: ExportS: Settings
- Clone this repository.
- Open Chrome and navigate to
chrome://extensions/. - Enable Developer mode (top right toggle).
- Click Load unpacked.
- Select the
VibePalettefolder.
- Vanilla JavaScript (No heavy frameworks)
- ColorThief (for base color extraction)
- HTML5 Canvas (for image processing)
- Vitest & JSDOM (for automated testing)
background.js: Extension background logic.popup.*: The main extension interface and logic.lib/: Third-party dependencies.icons/: Extension assets.tests/: Automated unit tests.docs/: Development logs and planning.
To run tests:
npm install
npm testMIT