color-curator

Browse and select color palettes from Coolors or curated fallbacks. Use to find the perfect color palette for a design project.

2,707 stars

Best use case

color-curator is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

Browse and select color palettes from Coolors or curated fallbacks. Use to find the perfect color palette for a design project.

Teams using color-curator should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/color-curator/SKILL.md --create-dirs "https://raw.githubusercontent.com/davepoon/buildwithclaude/main/plugins/frontend-design-pro/skills/color-curator/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/color-curator/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How color-curator Compares

Feature / Agentcolor-curatorStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Browse and select color palettes from Coolors or curated fallbacks. Use to find the perfect color palette for a design project.

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

Related Guides

SKILL.md Source

# Color 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

```javascript
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:

```javascript
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:

```javascript
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:

```javascript
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:

```javascript
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

1. Ask user about desired mood/aesthetic
2. Present relevant fallback palettes from `references/color-theory.md`
3. Let user choose or request adjustments
4. 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:

```markdown
## 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

Related Skills

tiktok-automation

2707
from davepoon/buildwithclaude

Automate TikTok tasks via Rube MCP (Composio): upload/publish videos, post photos, manage content, and view user profiles/stats. Always search tools first for current schemas.

theme-factory

2707
from davepoon/buildwithclaude

Toolkit for styling artifacts with a theme. These artifacts can be slides, docs, reportings, HTML landing pages, etc. There are 10 pre-set themes with colors/fonts that you can apply to any artifact that has been creating, or can generate a new theme on-the-fly.

telegram-automation

2707
from davepoon/buildwithclaude

Automate Telegram tasks via Rube MCP (Composio): send messages, manage chats, share photos/documents, and handle bot commands. Always search tools first for current schemas.

tailored-resume-generator

2707
from davepoon/buildwithclaude

Analyzes job descriptions and generates tailored resumes that highlight relevant experience, skills, and achievements to maximize interview chances

supabase-automation

2707
from davepoon/buildwithclaude

Automate Supabase database queries, table management, project administration, storage, edge functions, and SQL execution via Rube MCP (Composio). Always search tools first for current schemas.

stripe-automation

2707
from davepoon/buildwithclaude

Automate Stripe tasks via Rube MCP (Composio): customers, charges, subscriptions, invoices, products, refunds. Always search tools first for current schemas.

square-automation

2707
from davepoon/buildwithclaude

Automate Square tasks via Rube MCP (Composio): payments, orders, invoices, locations. Always search tools first for current schemas.

slack-message-formatter

2707
from davepoon/buildwithclaude

Format messages for Slack with pixel-perfect accuracy. Converts Markdown to rich HTML (for copy-paste into Slack) or Slack mrkdwn (for API/webhook). Use when the user asks to write a Slack message, announcement, or notification, format something "for Slack", preview how content looks in Slack, or send a message via Slack webhook. Also trigger when user mentions Slack formatting, mrkdwn, or wants to share Markdown content in Slack channels.

slack-gif-creator

2707
from davepoon/buildwithclaude

Toolkit for creating animated GIFs optimized for Slack, with validators for size constraints and composable animation primitives. This skill applies when users request animated GIFs or emoji animations for Slack from descriptions like "make me a GIF for Slack of X doing Y".

slack-automation

2707
from davepoon/buildwithclaude

Automate Slack messaging, channel management, search, reactions, and threads via Rube MCP (Composio). Send messages, search conversations, manage channels/users, and react to messages programmatically.

skill-share

2707
from davepoon/buildwithclaude

A skill that creates new Claude skills and automatically shares them on Slack using Rube for seamless team collaboration and skill discovery.

skill-creator

2707
from davepoon/buildwithclaude

Guide for creating effective skills. This skill should be used when users want to create a new skill (or update an existing skill) that extends Claude's capabilities with specialized knowledge, workflows, or tool integrations.