Learn-skills.dev corporate-colors

install
source · Clone the upstream repo
git clone https://github.com/NeverSight/learn-skills.dev
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/NeverSight/learn-skills.dev "$T" && mkdir -p ~/.claude/skills && cp -r "$T/data/skills-md/333-333-333/agents/corporate-colors" ~/.claude/skills/neversight-learn-skills-dev-corporate-colors && rm -rf "$T"
manifest: data/skills-md/333-333-333/agents/corporate-colors/SKILL.md
source content

When to Use

  • Defining brand color systems for applications
  • Implementing light/dark theme switching
  • Creating design tokens or style systems
  • Establishing color naming conventions across teams

Design Philosophy

Warm tones only. Bastet is a pet care platform — the brand must feel warm, inviting, and trustworthy. Cold blues/purples are explicitly avoided for primary and secondary roles.

Based on Catppuccin flavors:

  • Light mode: Latte
  • Dark mode: Mocha

Brand Colors

RoleCatppuccin NameLight (Latte)Dark (Mocha)Usage
PrimaryMaroon
#E64553
#EBA0AC
CTAs, buttons, links, focus rings
SecondaryFlamingo
#DD7878
#F2CDCD
Badges, tags, supporting elements
EmphasisPeach
#FE640B
#FAB387
Hover states, highlights, accents
Warm infoRosewater
#DC8A78
#F5E0DC
Informational, subtle accents

Why These Colors

  • Maroon — Bold warm red. Reads as "action" with confidence and warmth
  • Flamingo — Soft pink that complements Maroon without competing
  • Peach — Energetic orange for emphasis/hover, draws attention to highlights
  • Rosewater — Delicate pink for info states, keeps everything cohesive

Colors NOT Used as Primary/Secondary

ColorReason
Blue, SapphireToo cold, corporate feel
Lavender, MauvePurple is cold, doesn't match pet care warmth
TealCold, clinical
GreenReserved for semantic "success" only

Color Categories

CategoryPurposeUsage
PrimaryMain brand actions (CTA, links, focus states)Buttons, active states, primary actions
SecondarySupporting elements, less prominent actionsBadges, tags, secondary buttons
AccentEmphasis, highlights, notificationsAlerts, highlights, important info
SurfaceBackgrounds, containersCards, modals, panels
TextTypography hierarchyBody text, headings, labels
BorderDividers, outlinesSeparators, input borders

Catppuccin Color Mappings

All color token definitions (primary, secondary, accent, surface, text, border) for both light and dark modes:

See assets/color-tokens.ts


Design Tokens

CSS Custom Properties (light + dark)

See assets/styles.css

Tailwind Configuration

See assets/tailwind-colors.js

TypeScript Theme System

See assets/theme-tokens.ts

React Component Examples

See assets/example-component.tsx

Flutter Implementation

Reference:

mobile/lib/app/theme/app_colors.dart

// Access via Forui theme
final colors = context.theme.colors;
colors.primary;    // Maroon
colors.secondary;  // Flamingo

Light/Dark Mode Conventions

Contrast Requirements

ElementLight ModeDark Mode
Text on backgroundsDark text on light surfacesLight text on dark surfaces
Primary actionsHigh contrast (Maroon
#E64553
on Base
#eff1f5
)
Softer contrast (Maroon
#EBA0AC
on Base
#1e1e2e
)
BordersSubtle, darker than backgroundSubtle, lighter than background
Hover statesShift to Peach (warmer, energetic)Shift to Peach (warmer, energetic)

Semantic Color Usage

// DO: Use semantic names
<Button color="primary">Submit</Button>
<Alert variant="error">Failed</Alert>

// DON'T: Use specific color names
<Button color="peach">Submit</Button>
<Alert variant="red">Failed</Alert>

Mode Switching

The app MUST respect the device's system brightness preference. Never force a single mode.

// Flutter — reads system preference automatically
final brightness = MediaQuery.platformBrightnessOf(context);
final scheme = brightness == Brightness.dark
    ? AppColors.dark
    : AppColors.light;

Accessibility Guidelines

  • WCAG AA Compliance: Minimum 4.5:1 contrast for normal text, 3:1 for large text
  • Focus Indicators: Use primary color with 2px outline
  • Error States: Always pair error color with icons/text, never rely on color alone
  • Color Blindness: Peach/Flamingo may appear similar to protanopia — always pair with shape/text cues

Commands

# Install Catppuccin palette packages (optional)
npm install @catppuccin/palette

# Test contrast ratios
npx polypane # or use online tools like contrast-ratio.com

Resources