From designskills
Build complete visual identity systems: logos, brand colors, typography, and brand guidelines. Trigger phrases: "brand identity", "logo design", "brand guidelines", "visual identity", "brand system", "favicon", "brand colors", "logo variations", "brand pattern"
How this skill is triggered — by the user, by Claude, or both
Slash command
/designskills:brand-identityThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Create cohesive visual identity systems that communicate brand values through code.
Create cohesive visual identity systems that communicate brand values through code.
Before building a brand identity, check for existing design context:
Use simple geometric SVG marks (48x48 viewBox, rounded rect + inner shape). For CSS-only marks: display: grid; place-items: center on a colored rounded square, ::after pseudo-element for the inner shape.
Every brand needs at minimum 4 logo forms:
flex, gap: 0.75rem). Icon 40px, wordmark in heading font 1.25rem/700.flex-direction: column, text-align: center).Responsive pattern: Show full logo by default, swap to icon-only at max-width: 480px.
A brand color system is more than a palette. Structure it as:
| Role | Count | Purpose |
|---|---|---|
| Primary | 1 | Main brand color. CTAs, key UI elements. |
| Secondary | 1 | Supporting accent. Complementary. |
| Neutral | 1 scale | Grays for text, borders, backgrounds. |
| Semantic | 4 | Success, warning, error, info. |
| Surface | 2-3 | Background layers. |
:root {
/* Brand */
--color-primary: oklch(0.55 0.15 250);
--color-primary-light: oklch(0.70 0.10 250);
--color-primary-dark: oklch(0.40 0.15 250);
--color-secondary: oklch(0.60 0.18 330);
--color-secondary-light: oklch(0.75 0.12 330);
/* Surfaces */
--color-bg: oklch(0.99 0.005 250);
--color-surface: oklch(0.97 0.005 250);
--color-surface-raised: oklch(1.00 0 0);
/* Text */
--color-text: oklch(0.20 0.02 250);
--color-text-muted: oklch(0.50 0.01 250);
--color-text-inverse: oklch(0.97 0.005 250);
}
| Brand personality | Font style | Examples |
|---|---|---|
| Traditional | Serif | Playfair Display, Lora |
| Modern / Clean | Geometric sans | Inter, DM Sans, Manrope |
| Friendly / Warm | Rounded sans | Nunito, Quicksand |
| Technical | Monospace or grotesk | JetBrains Mono, Space Grotesk |
| Luxury | Thin serif/sans | Cormorant, Outfit |
| Playful | Display or handwritten | Bricolage Grotesque, Caveat |
:root {
--font-display: 'Playfair Display', Georgia, 'Times New Roman', serif;
--font-body: 'Inter', system-ui, -apple-system, sans-serif;
--font-mono: 'JetBrains Mono', 'Fira Code', 'Cascadia Code', monospace;
}
Always include system fallbacks. Always include generic family last.
Subtle patterns add visual richness and brand recognition.
.brand-pattern-dots {
background-image: radial-gradient(
circle,
var(--brand-200) 1px,
transparent 1px
);
background-size: 24px 24px;
}
.brand-pattern-lines {
background-image: repeating-linear-gradient(
45deg,
transparent,
transparent 10px,
var(--brand-100) 10px,
var(--brand-100) 11px
);
}
.brand-pattern-grid {
background-image:
linear-gradient(var(--brand-100) 1px, transparent 1px),
linear-gradient(90deg, var(--brand-100) 1px, transparent 1px);
background-size: 32px 32px;
}
.brand-texture {
position: relative;
}
.brand-texture::after {
content: '';
position: absolute;
inset: 0;
background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.05'/%3E%3C/svg%3E");
pointer-events: none;
}
The clear zone around a logo should equal the height of the logo mark (or a specific letter like the "x" in the wordmark).
.logo-container {
/* Clear zone = logo height on all sides */
padding: var(--logo-clearzone, 2rem);
}
/* Minimum size constraints */
.logo-primary {
min-width: 120px; /* Never render smaller than this */
}
.logo-icon-mark {
min-width: 24px; /* Absolute minimum for icon-only */
}
When building a brand guidelines page or system, include these sections:
Structure as semantic sections (<section id="logo">, <section id="colors">, etc.) within a <main class="brand-guide">. Use specimen blocks (light/dark bg variants, display: grid; place-items: center; min-height: 200px) for logo display. Color swatches in auto-fit grid (minmax(160px, 1fr)).
| Format | Size | Usage |
|---|---|---|
| ICO | 32x32 | Browser tab (legacy) |
| PNG | 180x180 | Apple touch icon |
| PNG | 192x192 | Android home screen |
| PNG | 512x512 | Android splash, PWA |
| SVG | any | Modern browsers, scalable |
<link rel="icon" href="/favicon.svg" type="image/svg+xml">
<link rel="alternate icon" href="/favicon.ico">
<link rel="apple-touch-icon" href="/apple-touch-icon.png">
<!-- favicon.svg - supports dark mode! -->
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32">
<style>
rect { fill: #4f46e5; }
@media (prefers-color-scheme: dark) {
rect { fill: #818cf8; }
}
</style>
<rect width="32" height="32" rx="6"/>
<text x="16" y="22" text-anchor="middle"
font-family="system-ui" font-weight="bold"
font-size="18" fill="white">B</text>
</svg>
{
"name": "Brand Name",
"short_name": "Brand",
"icons": [
{ "src": "/icon-192.png", "sizes": "192x192", "type": "image/png" },
{ "src": "/icon-512.png", "sizes": "512x512", "type": "image/png" }
],
"theme_color": "#4f46e5",
"background_color": "#ffffff"
}
/* Avatar-safe logo layout */
.social-avatar {
width: 400px;
height: 400px;
background: var(--brand-500);
display: grid;
place-items: center;
border-radius: 50%; /* Preview circular crop */
}
.social-avatar .logo-mark {
width: 55%; /* Leave ~22.5% padding on each side */
height: 55%;
color: white;
}
| Platform | Recommended upload size |
|---|---|
| X/Twitter | 400x400px |
| 400x400px | |
| 320x320px | |
| GitHub | 500x500px |
| Slack | 512x512px |
3.5x2in, flex column, justify-content: space-between. Name in display font 14pt/700, title 9pt uppercase in brand color, contact 8pt gray.
Table-based: logo mark (48px) with brand-color border-right, name/title/contact stacked in adjacent cell. Use Arial, inline styles only.
npx claudepluginhub arnavpuri/designskills --plugin designskillsGenerates BRAND-IDENTITY.md file defining colors, typography, spacing, components, accessibility, and responsive design for project roots. Guides via discovery questions or uses user-provided tokens.
Designs or evaluates brand visual identity systems: logo, color, typography, imagery, iconography, and motion. Use when brand direction is approved and visual artifacts are needed.
Designs a complete logo system with variants, clear space, minimum sizes, and usage rules for consistent brand recognition across print, digital, and environmental contexts.