Color Curator
npx machina-cli add skill davepoon/buildwithclaude/color-curator --openclawColor Curator
Browse, select, and apply color palettes for frontend designs.
Purpose
This skill helps select the perfect color palette by:
- Browsing trending palettes on Coolors
- Presenting options to the user
- Extracting hex codes
- Mapping to Tailwind config
- Providing curated fallbacks when browser unavailable
Browser Workflow
Step 1: Navigate to Coolors
tabs_context_mcp({ createIfEmpty: true })
tabs_create_mcp()
navigate({ url: "https://coolors.co/palettes/trending", tabId: tabId })
Step 2: Screenshot Palettes
Take screenshots of trending palettes:
computer({ action: "screenshot", tabId: tabId })
Present to user: "Here are the trending palettes. Which one catches your eye?"
Step 3: Browse More
If user wants more options:
computer({ action: "scroll", scroll_direction: "down", tabId: tabId })
computer({ action: "screenshot", tabId: tabId })
Step 4: Select Palette
When user chooses a palette, click to view details:
computer({ action: "left_click", coordinate: [x, y], tabId: tabId })
Step 5: Extract Colors
From the palette detail view, extract:
- All 5 hex codes
- Color names if available
- Relative positions (light to dark)
Step 6: Map to Design
Based on user's background style preference:
| Background Style | Mapping |
|---|---|
| Pure white | bg: #ffffff, text: darkest color |
| Off-white/warm | bg: #faf8f5, text: darkest |
| Light tinted | bg: lightest from palette, text: darkest |
| Dark/moody | bg: darkest from palette, text: white/#fafafa |
Step 7: Generate Config
Create Tailwind color config:
tailwind.config = {
theme: {
extend: {
colors: {
primary: '#[main-color]',
secondary: '#[supporting-color]',
accent: '#[pop-color]',
background: '#[bg-color]',
surface: '#[card-color]',
text: {
primary: '#[heading-color]',
secondary: '#[body-color]',
muted: '#[muted-color]'
}
}
}
}
}
Fallback Mode
When browser tools are unavailable, use curated palettes.
How to Use Fallbacks
- Ask user about desired mood/aesthetic
- Present relevant fallback palettes from
references/color-theory.md - Let user choose or request adjustments
- Provide hex codes for selected palette
Present Options
Ask the user:
"Without browser access, I can suggest palettes based on your aesthetic. Which mood fits best?"
- Dark & Premium: Rich blacks with warm accents
- Clean & Minimal: Neutral grays with single accent
- Bold & Energetic: High contrast primaries
- Warm & Inviting: Earth tones and creams
- Cool & Professional: Blues and slate grays
- Creative & Playful: Vibrant multi-color
Manual Input
Users can also provide:
- Hex codes directly: "Use #ff6b35 as primary"
- Color descriptions: "I want a forest green and cream palette"
- Reference: "Match these colors from my logo"
Palette Best Practices
60-30-10 Rule
- 60%: Dominant color (background, large areas)
- 30%: Secondary color (containers, sections)
- 10%: Accent color (CTAs, highlights)
Contrast Requirements
Always verify:
- Text on background: 4.5:1 minimum
- Large text on background: 3:1 minimum
- Interactive elements: 3:1 minimum
Color Roles
| Role | Usage | Count |
|---|---|---|
| Primary | Brand, CTAs, links | 1 |
| Secondary | Hover, icons, supporting | 1-2 |
| Background | Page background | 1 |
| Surface | Cards, modals, inputs | 1 |
| Border | Dividers, outlines | 1 |
| Text Primary | Headings, important text | 1 |
| Text Secondary | Body, descriptions | 1 |
| Text Muted | Captions, placeholders | 1 |
Output Format
Provide the selected palette in this format:
## Selected Color Palette
### Colors
| Role | Hex | Preview | Usage |
|------|-----|---------|-------|
| Primary | #ff6b35 | 🟧 | CTAs, links, accents |
| Background | #0a0a0a | ⬛ | Page background |
| Surface | #1a1a1a | ⬛ | Cards, modals |
| Text Primary | #ffffff | ⬜ | Headings, buttons |
| Text Secondary | #a3a3a3 | ⬜ | Body text, descriptions |
| Border | #2a2a2a | ⬛ | Dividers, outlines |
### Tailwind Config
\`\`\`javascript
colors: {
primary: '#ff6b35',
background: '#0a0a0a',
surface: '#1a1a1a',
text: {
primary: '#ffffff',
secondary: '#a3a3a3',
},
border: '#2a2a2a',
}
\`\`\`
### CSS Variables (Alternative)
\`\`\`css
:root {
--color-primary: #ff6b35;
--color-background: #0a0a0a;
--color-surface: #1a1a1a;
--color-text-primary: #ffffff;
--color-text-secondary: #a3a3a3;
--color-border: #2a2a2a;
}
\`\`\`
References
See references/color-theory.md for:
- Curated fallback palettes by aesthetic
- Color psychology guide
- Palette creation techniques
- Accessibility considerations
Source
git clone https://github.com/davepoon/buildwithclaude/blob/main/plugins/frontend-design-pro/skills/color-curator/SKILL.mdView on GitHub Overview
Color Curator helps you browse, select, and apply color palettes for frontend designs by pulling trending options from Coolors or curated fallbacks. It extracts hex codes, maps colors to a Tailwind config, and provides fallbacks when browser access is unavailable.
How This Skill Works
The skill navigates to Coolors to access trending palettes, screenshots and extracts the five hex codes (and names if available) with their light-to-dark ordering, then generates a Tailwind config extension mapping primary, secondary, accent, background, surface, and text roles. If browser access is unavailable, it switches to curated fallbacks and mood-based palettes from the reference material.
When to Use It
- When you need a quick, on-brand UI color scheme sourced from trending palettes.
- When aligning a design with brand colors and meeting accessibility contrast requirements.
- When prototyping multiple design variants to test visual direction quickly.
- When working offline or in a restricted environment and needing reliable fallbacks.
- When exploring color theory and mapping moods to palettes for a project.
Quick Start
- Step 1: Open Coolors and browse trending palettes.
- Step 2: Extract the five hex codes (and names if available) from a chosen palette, noting light-to-dark order.
- Step 3: Generate a Tailwind config extension (primary, secondary, accent, background, surface, text) and use curated fallbacks if needed.
Best Practices
- Follow the 60-30-10 rule: 60% dominant, 30% secondary, 10% accent.
- Verify contrast: body text 4.5:1, large text 3:1, interactive elements 3:1.
- Define clear color roles: primary, secondary, background, surface, and text tokens.
- Limit core palette to 3-5 colors to maintain cohesion.
- Use curated fallbacks when browser access is unavailable to preserve consistency.
Example Use Cases
- Design a landing page by selecting a trending Coolors palette and generating a Tailwind config with primary, background, and text colors.
- Create an accessible dashboard theme by ensuring contrast and mapping to text tokens in Tailwind.
- Refresh a product UI with a seasonal palette using offline fallbacks to keep visuals consistent during a rollout.
- Align a branding refresh by mapping brand hex codes to Tailwind colors and updating background/surface tokens.
- Prototype multiple mood variants (Dark, Clean, Bold) and compare user preference before finalizing the design system.