ui-pro-forge-cli 2.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +99 -0
- package/assets/data/app-interface.csv +31 -0
- package/assets/data/charts.csv +26 -0
- package/assets/data/colors.csv +194 -0
- package/assets/data/google-fonts.csv +1924 -0
- package/assets/data/icons.csv +106 -0
- package/assets/data/landing.csv +35 -0
- package/assets/data/motion.csv +17 -0
- package/assets/data/products.csv +193 -0
- package/assets/data/react-performance.csv +45 -0
- package/assets/data/stacks/angular.csv +51 -0
- package/assets/data/stacks/astro.csv +54 -0
- package/assets/data/stacks/avalonia.csv +57 -0
- package/assets/data/stacks/flutter.csv +53 -0
- package/assets/data/stacks/html-tailwind.csv +56 -0
- package/assets/data/stacks/javafx.csv +76 -0
- package/assets/data/stacks/jetpack-compose.csv +53 -0
- package/assets/data/stacks/laravel.csv +51 -0
- package/assets/data/stacks/nextjs.csv +53 -0
- package/assets/data/stacks/nuxt-ui.csv +71 -0
- package/assets/data/stacks/nuxtjs.csv +59 -0
- package/assets/data/stacks/react-native.csv +52 -0
- package/assets/data/stacks/react.csv +54 -0
- package/assets/data/stacks/shadcn.csv +61 -0
- package/assets/data/stacks/solidjs.csv +21 -0
- package/assets/data/stacks/svelte.csv +54 -0
- package/assets/data/stacks/swiftui.csv +51 -0
- package/assets/data/stacks/threejs.csv +54 -0
- package/assets/data/stacks/uno.csv +60 -0
- package/assets/data/stacks/vue.csv +50 -0
- package/assets/data/stacks/winui.csv +60 -0
- package/assets/data/styles.csv +86 -0
- package/assets/data/typography.csv +75 -0
- package/assets/data/ui-reasoning.csv +162 -0
- package/assets/data/ux-guidelines.csv +100 -0
- package/assets/scripts/core.py +463 -0
- package/assets/scripts/design_system.py +1371 -0
- package/assets/scripts/search.py +162 -0
- package/assets/scripts/tests/test_core.py +134 -0
- package/assets/scripts/validate_data.py +114 -0
- package/assets/skills/banner-design/SKILL.md +196 -0
- package/assets/skills/banner-design/references/banner-sizes-and-styles.md +118 -0
- package/assets/skills/brand/SKILL.md +97 -0
- package/assets/skills/brand/references/approval-checklist.md +169 -0
- package/assets/skills/brand/references/asset-organization.md +157 -0
- package/assets/skills/brand/references/brand-guideline-template.md +140 -0
- package/assets/skills/brand/references/color-palette-management.md +186 -0
- package/assets/skills/brand/references/consistency-checklist.md +94 -0
- package/assets/skills/brand/references/logo-usage-rules.md +185 -0
- package/assets/skills/brand/references/messaging-framework.md +85 -0
- package/assets/skills/brand/references/typography-specifications.md +214 -0
- package/assets/skills/brand/references/update.md +118 -0
- package/assets/skills/brand/references/visual-identity.md +96 -0
- package/assets/skills/brand/references/voice-framework.md +88 -0
- package/assets/skills/brand/scripts/extract-colors.cjs +341 -0
- package/assets/skills/brand/scripts/inject-brand-context.cjs +349 -0
- package/assets/skills/brand/scripts/sync-brand-to-tokens.cjs +248 -0
- package/assets/skills/brand/scripts/tests/test_sync_brand_to_tokens.py +52 -0
- package/assets/skills/brand/scripts/validate-asset.cjs +387 -0
- package/assets/skills/brand/templates/brand-guidelines-starter.md +275 -0
- package/assets/skills/design/SKILL.md +313 -0
- package/assets/skills/design/data/cip/deliverables.csv +51 -0
- package/assets/skills/design/data/cip/industries.csv +21 -0
- package/assets/skills/design/data/cip/mockup-contexts.csv +21 -0
- package/assets/skills/design/data/cip/styles.csv +21 -0
- package/assets/skills/design/data/icon/styles.csv +16 -0
- package/assets/skills/design/data/logo/colors.csv +56 -0
- package/assets/skills/design/data/logo/industries.csv +56 -0
- package/assets/skills/design/data/logo/styles.csv +56 -0
- package/assets/skills/design/references/banner-sizes-and-styles.md +118 -0
- package/assets/skills/design/references/cip-deliverable-guide.md +95 -0
- package/assets/skills/design/references/cip-design.md +121 -0
- package/assets/skills/design/references/cip-prompt-engineering.md +84 -0
- package/assets/skills/design/references/cip-style-guide.md +68 -0
- package/assets/skills/design/references/design-routing.md +207 -0
- package/assets/skills/design/references/icon-design.md +122 -0
- package/assets/skills/design/references/logo-color-psychology.md +101 -0
- package/assets/skills/design/references/logo-design.md +92 -0
- package/assets/skills/design/references/logo-prompt-engineering.md +158 -0
- package/assets/skills/design/references/logo-style-guide.md +109 -0
- package/assets/skills/design/references/slides-copywriting-formulas.md +84 -0
- package/assets/skills/design/references/slides-create.md +4 -0
- package/assets/skills/design/references/slides-html-template.md +295 -0
- package/assets/skills/design/references/slides-layout-patterns.md +137 -0
- package/assets/skills/design/references/slides-strategies.md +94 -0
- package/assets/skills/design/references/slides.md +42 -0
- package/assets/skills/design/references/social-photos-design.md +329 -0
- package/assets/skills/design/scripts/cip/core.py +215 -0
- package/assets/skills/design/scripts/cip/generate.py +484 -0
- package/assets/skills/design/scripts/cip/render-html.py +424 -0
- package/assets/skills/design/scripts/cip/search.py +127 -0
- package/assets/skills/design/scripts/icon/generate.py +487 -0
- package/assets/skills/design/scripts/logo/core.py +175 -0
- package/assets/skills/design/scripts/logo/generate.py +362 -0
- package/assets/skills/design/scripts/logo/search.py +114 -0
- package/assets/skills/design-system/SKILL.md +244 -0
- package/assets/skills/design-system/data/slide-backgrounds.csv +11 -0
- package/assets/skills/design-system/data/slide-charts.csv +26 -0
- package/assets/skills/design-system/data/slide-color-logic.csv +14 -0
- package/assets/skills/design-system/data/slide-copy.csv +26 -0
- package/assets/skills/design-system/data/slide-layout-logic.csv +16 -0
- package/assets/skills/design-system/data/slide-layouts.csv +26 -0
- package/assets/skills/design-system/data/slide-strategies.csv +16 -0
- package/assets/skills/design-system/data/slide-typography.csv +15 -0
- package/assets/skills/design-system/references/component-specs.md +236 -0
- package/assets/skills/design-system/references/component-tokens.md +214 -0
- package/assets/skills/design-system/references/primitive-tokens.md +203 -0
- package/assets/skills/design-system/references/semantic-tokens.md +215 -0
- package/assets/skills/design-system/references/states-and-variants.md +241 -0
- package/assets/skills/design-system/references/tailwind-integration.md +251 -0
- package/assets/skills/design-system/references/token-architecture.md +224 -0
- package/assets/skills/design-system/scripts/embed-tokens.cjs +99 -0
- package/assets/skills/design-system/scripts/fetch-background.py +317 -0
- package/assets/skills/design-system/scripts/generate-slide.py +770 -0
- package/assets/skills/design-system/scripts/generate-tokens.cjs +205 -0
- package/assets/skills/design-system/scripts/html-token-validator.py +327 -0
- package/assets/skills/design-system/scripts/search-slides.py +218 -0
- package/assets/skills/design-system/scripts/slide-token-validator.py +35 -0
- package/assets/skills/design-system/scripts/slide_search_core.py +453 -0
- package/assets/skills/design-system/scripts/tests/test_validate_tokens.py +48 -0
- package/assets/skills/design-system/scripts/validate-tokens.cjs +246 -0
- package/assets/skills/design-system/templates/design-tokens-starter.json +143 -0
- package/assets/skills/slides/SKILL.md +40 -0
- package/assets/skills/slides/references/copywriting-formulas.md +84 -0
- package/assets/skills/slides/references/create.md +4 -0
- package/assets/skills/slides/references/html-template.md +295 -0
- package/assets/skills/slides/references/layout-patterns.md +137 -0
- package/assets/skills/slides/references/slide-strategies.md +94 -0
- package/assets/skills/ui-styling/LICENSE.txt +202 -0
- package/assets/skills/ui-styling/SKILL.md +324 -0
- package/assets/skills/ui-styling/references/canvas-design-system.md +320 -0
- package/assets/skills/ui-styling/references/shadcn-accessibility.md +471 -0
- package/assets/skills/ui-styling/references/shadcn-components.md +424 -0
- package/assets/skills/ui-styling/references/shadcn-theming.md +373 -0
- package/assets/skills/ui-styling/references/tailwind-customization.md +483 -0
- package/assets/skills/ui-styling/references/tailwind-responsive.md +382 -0
- package/assets/skills/ui-styling/references/tailwind-utilities.md +455 -0
- package/assets/skills/ui-styling/scripts/requirements.txt +17 -0
- package/assets/skills/ui-styling/scripts/shadcn_add.py +308 -0
- package/assets/skills/ui-styling/scripts/tailwind_config_gen.py +473 -0
- package/assets/skills/ui-styling/scripts/tests/coverage-ui.json +1 -0
- package/assets/skills/ui-styling/scripts/tests/requirements.txt +3 -0
- package/assets/skills/ui-styling/scripts/tests/test_shadcn_add.py +266 -0
- package/assets/skills/ui-styling/scripts/tests/test_tailwind_config_gen.py +394 -0
- package/assets/templates/base/quick-reference.md +297 -0
- package/assets/templates/base/skill-content.md +384 -0
- package/assets/templates/platforms/agent.json +21 -0
- package/assets/templates/platforms/augment.json +18 -0
- package/assets/templates/platforms/claude.json +21 -0
- package/assets/templates/platforms/codebuddy.json +21 -0
- package/assets/templates/platforms/codewhale.json +21 -0
- package/assets/templates/platforms/codex.json +21 -0
- package/assets/templates/platforms/continue.json +21 -0
- package/assets/templates/platforms/copilot.json +21 -0
- package/assets/templates/platforms/cursor.json +21 -0
- package/assets/templates/platforms/droid.json +21 -0
- package/assets/templates/platforms/gemini.json +21 -0
- package/assets/templates/platforms/kilocode.json +21 -0
- package/assets/templates/platforms/kiro.json +21 -0
- package/assets/templates/platforms/opencode.json +21 -0
- package/assets/templates/platforms/qoder.json +21 -0
- package/assets/templates/platforms/roocode.json +21 -0
- package/assets/templates/platforms/trae.json +21 -0
- package/assets/templates/platforms/warp.json +18 -0
- package/assets/templates/platforms/windsurf.json +21 -0
- package/dist/commands/init.d.ts +11 -0
- package/dist/commands/init.js +165 -0
- package/dist/commands/uninstall.d.ts +7 -0
- package/dist/commands/uninstall.js +131 -0
- package/dist/commands/update.d.ts +7 -0
- package/dist/commands/update.js +73 -0
- package/dist/commands/versions.d.ts +5 -0
- package/dist/commands/versions.js +36 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.js +78 -0
- package/dist/types/index.d.ts +40 -0
- package/dist/types/index.js +25 -0
- package/dist/utils/detect.d.ts +8 -0
- package/dist/utils/detect.js +115 -0
- package/dist/utils/extract.d.ts +15 -0
- package/dist/utils/extract.js +125 -0
- package/dist/utils/github.d.ts +12 -0
- package/dist/utils/github.js +97 -0
- package/dist/utils/logger.d.ts +8 -0
- package/dist/utils/logger.js +9 -0
- package/dist/utils/template.d.ts +50 -0
- package/dist/utils/template.js +249 -0
- package/package.json +65 -0
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
# Banner Sizes & Art Direction Styles Reference
|
|
2
|
+
|
|
3
|
+
## Complete Banner Sizes
|
|
4
|
+
|
|
5
|
+
### Social Media
|
|
6
|
+
| Platform | Type | Size (px) | Aspect Ratio |
|
|
7
|
+
|----------|------|-----------|--------------|
|
|
8
|
+
| Facebook | Cover (desktop) | 820 × 312 | ~2.6:1 |
|
|
9
|
+
| Facebook | Cover (mobile) | 640 × 360 | ~16:9 |
|
|
10
|
+
| Facebook | Event cover | 1920 × 1080 | 16:9 |
|
|
11
|
+
| Twitter/X | Header | 1500 × 500 | 3:1 |
|
|
12
|
+
| Twitter/X | Ad banner | 800 × 418 | ~2:1 |
|
|
13
|
+
| LinkedIn | Company cover | 1128 × 191 | ~6:1 |
|
|
14
|
+
| LinkedIn | Personal banner | 1584 × 396 | 4:1 |
|
|
15
|
+
| YouTube | Channel art | 2560 × 1440 | 16:9 |
|
|
16
|
+
| YouTube | Safe area | 1546 × 423 | ~3.7:1 |
|
|
17
|
+
| Instagram | Stories | 1080 × 1920 | 9:16 |
|
|
18
|
+
| Instagram | Post | 1080 × 1080 | 1:1 |
|
|
19
|
+
| Pinterest | Pin | 1000 × 1500 | 2:3 |
|
|
20
|
+
|
|
21
|
+
### Web / Display Ads (Google Display Network)
|
|
22
|
+
| Name | Size (px) | Notes |
|
|
23
|
+
|------|-----------|-------|
|
|
24
|
+
| Medium Rectangle | 300 × 250 | Highest CTR |
|
|
25
|
+
| Leaderboard | 728 × 90 | Top of page |
|
|
26
|
+
| Wide Skyscraper | 160 × 600 | Sidebar |
|
|
27
|
+
| Half Page | 300 × 600 | Premium |
|
|
28
|
+
| Large Rectangle | 336 × 280 | High performer |
|
|
29
|
+
| Mobile Banner | 320 × 50 | Mobile default |
|
|
30
|
+
| Large Mobile | 320 × 100 | Mobile hero |
|
|
31
|
+
| Billboard | 970 × 250 | Desktop hero |
|
|
32
|
+
|
|
33
|
+
### Website
|
|
34
|
+
| Type | Size (px) |
|
|
35
|
+
|------|-----------|
|
|
36
|
+
| Full-width hero | 1920 × 600–1080 |
|
|
37
|
+
| Section banner | 1200 × 400 |
|
|
38
|
+
| Blog header | 1200 × 628 |
|
|
39
|
+
| Email header | 600 × 200 |
|
|
40
|
+
|
|
41
|
+
### Print
|
|
42
|
+
| Type | Size |
|
|
43
|
+
|------|------|
|
|
44
|
+
| Roll-up | 850mm × 2000mm |
|
|
45
|
+
| Step-and-repeat | 8ft × 8ft |
|
|
46
|
+
| Vinyl outdoor | 6ft × 3ft |
|
|
47
|
+
| Trade show | 33in × 78in |
|
|
48
|
+
|
|
49
|
+
## 22 Art Direction Styles
|
|
50
|
+
|
|
51
|
+
1. **Minimalist** — White space dominant, single focal element, 1-2 colors, clean sans-serif
|
|
52
|
+
2. **Bold Typography** — Type IS the design; oversized, expressive letterforms fill canvas
|
|
53
|
+
3. **Gradient / Color Wash** — Smooth transitions, mesh gradients, chromatic blends
|
|
54
|
+
4. **Photo-Based** — Full-bleed photography with text overlay; hero lifestyle imagery
|
|
55
|
+
5. **Illustrated / Hand-Drawn** — Custom illustrations, bespoke icons, artisan feel
|
|
56
|
+
6. **Geometric / Abstract** — Shapes, lines, grids as primary visual elements
|
|
57
|
+
7. **Retro / Vintage** — Distressed textures, muted palettes, serif type, halftone dots
|
|
58
|
+
8. **Glassmorphism** — Frosted glass panels, blur backdrop, subtle border glow
|
|
59
|
+
9. **3D / Sculptural** — Rendered objects, depth, shadows; product-centric
|
|
60
|
+
10. **Neon / Cyberpunk** — Dark backgrounds, glowing neon accents, high contrast
|
|
61
|
+
11. **Duotone** — Two-color photo treatment; bold brand color overlay on image
|
|
62
|
+
12. **Editorial / Magazine** — Grid-heavy layouts, pull quotes, journalistic composition
|
|
63
|
+
13. **Collage / Mixed Media** — Cut-paper textures, photo cutouts, layered elements
|
|
64
|
+
14. **Retro Futurism** — Space-age nostalgia, chrome, gradients, optimism
|
|
65
|
+
15. **Expressive / Anti-Design** — Chaotic layouts, mixed fonts, deliberate "wrong" composition
|
|
66
|
+
16. **Digi-Cute / Kawaii** — Rounded shapes, pastel gradients, pixel art, playful characters
|
|
67
|
+
17. **Tactile / Sensory** — Puffy/squishy textures, hyper-real materials, embossed feel
|
|
68
|
+
18. **Data / Infographic** — Stats front-and-center, charts, numbers as heroes
|
|
69
|
+
19. **Dark Mode / Moody** — Near-black backgrounds, rich jewel tones, high contrast
|
|
70
|
+
20. **Flat / Solid Color** — Single background color, clean icons, no gradients
|
|
71
|
+
21. **Nature / Organic** — Earthy tones, botanical motifs, sustainable brand feel
|
|
72
|
+
22. **Motion-Ready / Kinetic** — Designed for animation; layered elements, loopable
|
|
73
|
+
|
|
74
|
+
## Design Principles
|
|
75
|
+
|
|
76
|
+
### Visual Hierarchy (3-Zone Rule)
|
|
77
|
+
- **Top**: Logo or main value prop
|
|
78
|
+
- **Middle**: Supporting message + visuals
|
|
79
|
+
- **Bottom**: CTA (button/QR/URL)
|
|
80
|
+
|
|
81
|
+
### Safe Zones
|
|
82
|
+
- Critical content in central 70-80% of canvas
|
|
83
|
+
- Avoid text/CTA within 50-100px of edges
|
|
84
|
+
- YouTube: 1546 × 423px safe area inside 2560 × 1440
|
|
85
|
+
- Meta/Instagram: central 80% to avoid UI chrome
|
|
86
|
+
|
|
87
|
+
### CTA Rules
|
|
88
|
+
- One CTA per banner
|
|
89
|
+
- High contrast vs background
|
|
90
|
+
- Bottom-right placement (terminal area)
|
|
91
|
+
- Min 44px height for mobile tap targets
|
|
92
|
+
- Action verbs: "Get", "Start", "Download", "Claim"
|
|
93
|
+
|
|
94
|
+
### Typography
|
|
95
|
+
- Max 2 typefaces per banner
|
|
96
|
+
- Min 16px body, ≥32px headline (digital)
|
|
97
|
+
- Min 4.5:1 contrast ratio
|
|
98
|
+
- Max 7 words/line, 3 lines for ads
|
|
99
|
+
|
|
100
|
+
### Text-to-Image Ratio
|
|
101
|
+
- Ads: under 20% text (Meta penalizes)
|
|
102
|
+
- Social covers: 60/40 image-to-text
|
|
103
|
+
- Print: 70pt+ headlines for 3-5m viewing distance
|
|
104
|
+
|
|
105
|
+
### Print Specs
|
|
106
|
+
- 300 DPI minimum (150 DPI for large format)
|
|
107
|
+
- 3-5mm bleed all sides
|
|
108
|
+
- CMYK color mode
|
|
109
|
+
- 1pt per foot viewing distance rule
|
|
110
|
+
|
|
111
|
+
## Pinterest Research Queries
|
|
112
|
+
|
|
113
|
+
Use these search queries on Pinterest for art direction references:
|
|
114
|
+
- `[purpose] banner design [style]` (e.g., "social media banner minimalist")
|
|
115
|
+
- `[platform] cover design inspiration` (e.g., "youtube channel art design")
|
|
116
|
+
- `creative banner layout [industry]` (e.g., "creative banner layout tech startup")
|
|
117
|
+
- `[style] graphic design 2026` (e.g., "gradient graphic design 2026")
|
|
118
|
+
- `banner ad design [product type]` (e.g., "banner ad design saas")
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: brand
|
|
3
|
+
description: Brand voice, visual identity, messaging frameworks, asset management, brand consistency. Activate for branded content, tone of voice, marketing assets, brand compliance, style guides.
|
|
4
|
+
argument-hint: "[update|review|create] [args]"
|
|
5
|
+
metadata:
|
|
6
|
+
author: kterfan
|
|
7
|
+
version: "1.0.0"
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# Brand
|
|
11
|
+
|
|
12
|
+
Brand identity, voice, messaging, asset management, and consistency frameworks.
|
|
13
|
+
|
|
14
|
+
## When to Use
|
|
15
|
+
|
|
16
|
+
- Brand voice definition and content tone guidance
|
|
17
|
+
- Visual identity standards and style guide development
|
|
18
|
+
- Messaging framework creation
|
|
19
|
+
- Brand consistency review and audit
|
|
20
|
+
- Asset organization, naming, and approval
|
|
21
|
+
- Color palette management and typography specs
|
|
22
|
+
|
|
23
|
+
## Quick Start
|
|
24
|
+
|
|
25
|
+
**Inject brand context into prompts:**
|
|
26
|
+
```bash
|
|
27
|
+
node scripts/inject-brand-context.cjs
|
|
28
|
+
node scripts/inject-brand-context.cjs --json
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
**Validate an asset:**
|
|
32
|
+
```bash
|
|
33
|
+
node scripts/validate-asset.cjs <asset-path>
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
**Extract/compare colors:**
|
|
37
|
+
```bash
|
|
38
|
+
node scripts/extract-colors.cjs --palette
|
|
39
|
+
node scripts/extract-colors.cjs <image-path>
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
## Brand Sync Workflow
|
|
43
|
+
|
|
44
|
+
```bash
|
|
45
|
+
# 1. Edit docs/brand-guidelines.md (or use /brand update)
|
|
46
|
+
# 2. Sync to design tokens
|
|
47
|
+
node scripts/sync-brand-to-tokens.cjs
|
|
48
|
+
# 3. Verify
|
|
49
|
+
node scripts/inject-brand-context.cjs --json | head -20
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
**Files synced:**
|
|
53
|
+
- `docs/brand-guidelines.md` → Source of truth
|
|
54
|
+
- `assets/design-tokens.json` → Token definitions
|
|
55
|
+
- `assets/design-tokens.css` → CSS variables
|
|
56
|
+
|
|
57
|
+
## Subcommands
|
|
58
|
+
|
|
59
|
+
| Subcommand | Description | Reference |
|
|
60
|
+
|------------|-------------|-----------|
|
|
61
|
+
| `update` | Update brand identity and sync to all design systems | `references/update.md` |
|
|
62
|
+
|
|
63
|
+
## References
|
|
64
|
+
|
|
65
|
+
| Topic | File |
|
|
66
|
+
|-------|------|
|
|
67
|
+
| Voice Framework | `references/voice-framework.md` |
|
|
68
|
+
| Visual Identity | `references/visual-identity.md` |
|
|
69
|
+
| Messaging | `references/messaging-framework.md` |
|
|
70
|
+
| Consistency | `references/consistency-checklist.md` |
|
|
71
|
+
| Guidelines Template | `references/brand-guideline-template.md` |
|
|
72
|
+
| Asset Organization | `references/asset-organization.md` |
|
|
73
|
+
| Color Management | `references/color-palette-management.md` |
|
|
74
|
+
| Typography | `references/typography-specifications.md` |
|
|
75
|
+
| Logo Usage | `references/logo-usage-rules.md` |
|
|
76
|
+
| Approval Checklist | `references/approval-checklist.md` |
|
|
77
|
+
|
|
78
|
+
## Scripts
|
|
79
|
+
|
|
80
|
+
| Script | Purpose |
|
|
81
|
+
|--------|---------|
|
|
82
|
+
| `scripts/inject-brand-context.cjs` | Extract brand context for prompt injection |
|
|
83
|
+
| `scripts/sync-brand-to-tokens.cjs` | Sync brand-guidelines.md → design-tokens.json/css |
|
|
84
|
+
| `scripts/validate-asset.cjs` | Validate asset naming, size, format |
|
|
85
|
+
| `scripts/extract-colors.cjs` | Extract and compare colors against palette |
|
|
86
|
+
|
|
87
|
+
## Templates
|
|
88
|
+
|
|
89
|
+
| Template | Purpose |
|
|
90
|
+
|----------|---------|
|
|
91
|
+
| `templates/brand-guidelines-starter.md` | Complete starter template for new brands |
|
|
92
|
+
|
|
93
|
+
## Routing
|
|
94
|
+
|
|
95
|
+
1. Parse subcommand from `$ARGUMENTS` (first word)
|
|
96
|
+
2. Load corresponding `references/{subcommand}.md`
|
|
97
|
+
3. Execute with remaining arguments
|
|
@@ -0,0 +1,169 @@
|
|
|
1
|
+
# Asset Approval Checklist
|
|
2
|
+
|
|
3
|
+
Comprehensive checklist for reviewing marketing assets before approval.
|
|
4
|
+
|
|
5
|
+
## Quick Review
|
|
6
|
+
|
|
7
|
+
Before detailed review, verify:
|
|
8
|
+
- [ ] Asset serves stated purpose
|
|
9
|
+
- [ ] Target audience appropriate
|
|
10
|
+
- [ ] No obvious errors or issues
|
|
11
|
+
- [ ] Aligns with campaign goals
|
|
12
|
+
|
|
13
|
+
## Visual Elements
|
|
14
|
+
|
|
15
|
+
### Logo Usage
|
|
16
|
+
- [ ] Correct logo variant for context
|
|
17
|
+
- [ ] Proper clear space maintained
|
|
18
|
+
- [ ] Minimum size requirements met
|
|
19
|
+
- [ ] Approved colors only
|
|
20
|
+
- [ ] No unauthorized modifications
|
|
21
|
+
- [ ] Appropriate for background
|
|
22
|
+
|
|
23
|
+
### Color Compliance
|
|
24
|
+
- [ ] Uses brand palette colors only
|
|
25
|
+
- [ ] Primary/secondary ratio appropriate (60/30/10)
|
|
26
|
+
- [ ] Semantic colors used correctly
|
|
27
|
+
- [ ] No off-brand colors introduced
|
|
28
|
+
- [ ] Consistent across all elements
|
|
29
|
+
|
|
30
|
+
### Typography
|
|
31
|
+
- [ ] Brand fonts used throughout
|
|
32
|
+
- [ ] Correct font weights applied
|
|
33
|
+
- [ ] Proper type hierarchy
|
|
34
|
+
- [ ] Appropriate sizes for medium
|
|
35
|
+
- [ ] Line heights adequate
|
|
36
|
+
- [ ] No orphans/widows in body text
|
|
37
|
+
|
|
38
|
+
### Imagery
|
|
39
|
+
- [ ] Matches brand photography style
|
|
40
|
+
- [ ] Appropriate subjects/content
|
|
41
|
+
- [ ] Quality meets requirements
|
|
42
|
+
- [ ] Properly licensed/credited
|
|
43
|
+
- [ ] Optimized for intended use
|
|
44
|
+
|
|
45
|
+
## Accessibility
|
|
46
|
+
|
|
47
|
+
### Visual Accessibility
|
|
48
|
+
- [ ] Text contrast ratio >= 4.5:1 (AA)
|
|
49
|
+
- [ ] Large text contrast >= 3:1
|
|
50
|
+
- [ ] Interactive elements have visible focus
|
|
51
|
+
- [ ] Color not sole indicator of meaning
|
|
52
|
+
- [ ] Alt text for all images
|
|
53
|
+
|
|
54
|
+
### Content Accessibility
|
|
55
|
+
- [ ] Clear and scannable layout
|
|
56
|
+
- [ ] Readable font sizes
|
|
57
|
+
- [ ] Logical reading order
|
|
58
|
+
- [ ] Meaningful headings structure
|
|
59
|
+
- [ ] Links describe destination
|
|
60
|
+
|
|
61
|
+
## Content Quality
|
|
62
|
+
|
|
63
|
+
### Copy Review
|
|
64
|
+
- [ ] Matches brand voice
|
|
65
|
+
- [ ] Appropriate tone for context
|
|
66
|
+
- [ ] No prohibited terms used
|
|
67
|
+
- [ ] Value proposition clear
|
|
68
|
+
- [ ] CTA compelling and clear
|
|
69
|
+
- [ ] Proofread for errors
|
|
70
|
+
|
|
71
|
+
### Messaging
|
|
72
|
+
- [ ] Aligns with key messages
|
|
73
|
+
- [ ] Differentiators highlighted
|
|
74
|
+
- [ ] Benefits over features
|
|
75
|
+
- [ ] Target audience addressed
|
|
76
|
+
- [ ] No conflicting claims
|
|
77
|
+
|
|
78
|
+
## Technical Requirements
|
|
79
|
+
|
|
80
|
+
### File Specifications
|
|
81
|
+
- [ ] Correct file format
|
|
82
|
+
- [ ] Appropriate resolution
|
|
83
|
+
- [ ] File size optimized
|
|
84
|
+
- [ ] Proper naming convention
|
|
85
|
+
- [ ] Metadata included
|
|
86
|
+
|
|
87
|
+
### Platform Requirements
|
|
88
|
+
| Platform | Verified |
|
|
89
|
+
|----------|----------|
|
|
90
|
+
| Instagram | [ ] Correct dimensions |
|
|
91
|
+
| Twitter/X | [ ] Meets requirements |
|
|
92
|
+
| LinkedIn | [ ] Professional standards |
|
|
93
|
+
| Facebook | [ ] Guidelines compliant |
|
|
94
|
+
| Email | [ ] Size under 1MB |
|
|
95
|
+
| Web | [ ] Optimized for web |
|
|
96
|
+
|
|
97
|
+
## Legal & Compliance
|
|
98
|
+
|
|
99
|
+
### Intellectual Property
|
|
100
|
+
- [ ] Stock images licensed
|
|
101
|
+
- [ ] Music/audio cleared
|
|
102
|
+
- [ ] No trademark violations
|
|
103
|
+
- [ ] User content authorized
|
|
104
|
+
- [ ] Credits included where needed
|
|
105
|
+
|
|
106
|
+
### Regulatory
|
|
107
|
+
- [ ] Required disclosures present
|
|
108
|
+
- [ ] No misleading claims
|
|
109
|
+
- [ ] Pricing accurate
|
|
110
|
+
- [ ] Terms linked where needed
|
|
111
|
+
- [ ] Privacy compliant
|
|
112
|
+
|
|
113
|
+
## Review Status
|
|
114
|
+
|
|
115
|
+
### Reviewer Sign-off
|
|
116
|
+
|
|
117
|
+
| Review Area | Reviewer | Date | Status |
|
|
118
|
+
|-------------|----------|------|--------|
|
|
119
|
+
| Visual Design | | | [ ] Pass / [ ] Revisions |
|
|
120
|
+
| Copy/Content | | | [ ] Pass / [ ] Revisions |
|
|
121
|
+
| Brand Compliance | | | [ ] Pass / [ ] Revisions |
|
|
122
|
+
| Technical | | | [ ] Pass / [ ] Revisions |
|
|
123
|
+
| Legal | | | [ ] Pass / [ ] Revisions |
|
|
124
|
+
|
|
125
|
+
### Final Approval
|
|
126
|
+
|
|
127
|
+
- [ ] All review areas passed
|
|
128
|
+
- [ ] Revisions completed (if any)
|
|
129
|
+
- [ ] Final version uploaded
|
|
130
|
+
- [ ] Metadata updated
|
|
131
|
+
- [ ] Ready for publish/use
|
|
132
|
+
|
|
133
|
+
**Approved By:** _______________
|
|
134
|
+
|
|
135
|
+
**Date:** _______________
|
|
136
|
+
|
|
137
|
+
**Version:** _______________
|
|
138
|
+
|
|
139
|
+
## Common Issues & Fixes
|
|
140
|
+
|
|
141
|
+
| Issue | Fix |
|
|
142
|
+
|-------|-----|
|
|
143
|
+
| Logo too small | Increase to minimum size |
|
|
144
|
+
| Wrong font | Replace with brand font |
|
|
145
|
+
| Low contrast | Adjust colors for accessibility |
|
|
146
|
+
| Off-brand color | Replace with palette color |
|
|
147
|
+
| Blurry image | Use higher resolution source |
|
|
148
|
+
| Missing alt text | Add descriptive alt text |
|
|
149
|
+
| Weak CTA | Strengthen action-oriented copy |
|
|
150
|
+
|
|
151
|
+
## Automation Support
|
|
152
|
+
|
|
153
|
+
The `validate-asset.cjs` script can auto-check:
|
|
154
|
+
- Color palette compliance
|
|
155
|
+
- Minimum dimensions
|
|
156
|
+
- File format/size
|
|
157
|
+
- Naming convention
|
|
158
|
+
- Basic metadata
|
|
159
|
+
|
|
160
|
+
Run: `node .claude/skills/brand/scripts/validate-asset.cjs <asset-path>`
|
|
161
|
+
|
|
162
|
+
## Archival
|
|
163
|
+
|
|
164
|
+
After approval:
|
|
165
|
+
1. Update asset status in manifest.json
|
|
166
|
+
2. Add approver and timestamp
|
|
167
|
+
3. Move previous versions to archive
|
|
168
|
+
4. Update campaign tracking
|
|
169
|
+
5. Notify relevant teams
|
|
@@ -0,0 +1,157 @@
|
|
|
1
|
+
# Asset Organization Guide
|
|
2
|
+
|
|
3
|
+
Guidelines for organizing marketing assets in a structured, searchable system.
|
|
4
|
+
|
|
5
|
+
## Directory Structure
|
|
6
|
+
|
|
7
|
+
```
|
|
8
|
+
project-root/
|
|
9
|
+
├── .assets/ # Git-tracked metadata
|
|
10
|
+
│ ├── manifest.json # Central asset registry
|
|
11
|
+
│ ├── tags.json # Tagging system
|
|
12
|
+
│ ├── versions/ # Version history
|
|
13
|
+
│ │ └── {asset-id}/
|
|
14
|
+
│ │ └── v{n}.json
|
|
15
|
+
│ └── metadata/ # Type-specific metadata
|
|
16
|
+
│ ├── designs.json
|
|
17
|
+
│ ├── banners.json
|
|
18
|
+
│ ├── logos.json
|
|
19
|
+
│ └── videos.json
|
|
20
|
+
├── assets/ # Raw files
|
|
21
|
+
│ ├── designs/
|
|
22
|
+
│ │ ├── campaigns/ # Campaign-specific designs
|
|
23
|
+
│ │ ├── web/ # Website graphics
|
|
24
|
+
│ │ └── print/ # Print materials
|
|
25
|
+
│ ├── banners/
|
|
26
|
+
│ │ ├── social-media/ # Platform banners
|
|
27
|
+
│ │ ├── email-headers/ # Email template headers
|
|
28
|
+
│ │ └── landing-pages/ # Hero/section images
|
|
29
|
+
│ ├── logos/
|
|
30
|
+
│ │ ├── full-horizontal/ # Full logo with wordmark
|
|
31
|
+
│ │ ├── icon-only/ # Symbol only
|
|
32
|
+
│ │ ├── monochrome/ # Single color versions
|
|
33
|
+
│ │ └── variations/ # Special versions
|
|
34
|
+
│ ├── videos/
|
|
35
|
+
│ │ ├── ads/ # Promotional videos
|
|
36
|
+
│ │ ├── tutorials/ # How-to content
|
|
37
|
+
│ │ └── testimonials/ # Customer videos
|
|
38
|
+
│ ├── infographics/ # Data visualizations
|
|
39
|
+
│ └── generated/ # AI-generated assets
|
|
40
|
+
│ └── {YYYYMMDD}/ # Date-organized
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
## Naming Convention
|
|
44
|
+
|
|
45
|
+
### Format
|
|
46
|
+
```
|
|
47
|
+
{type}_{campaign}_{description}_{timestamp}_{variant}.{ext}
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
### Components
|
|
51
|
+
| Component | Format | Required | Examples |
|
|
52
|
+
|-----------|--------|----------|----------|
|
|
53
|
+
| type | lowercase | Yes | banner, logo, design, video |
|
|
54
|
+
| campaign | kebab-case | Yes* | claude-launch, q1-promo, evergreen |
|
|
55
|
+
| description | kebab-case | Yes | hero-image, email-header |
|
|
56
|
+
| timestamp | YYYYMMDD | Yes | 20251209 |
|
|
57
|
+
| variant | kebab-case | No | dark-mode, 1x1, mobile |
|
|
58
|
+
|
|
59
|
+
*Use "evergreen" for non-campaign assets
|
|
60
|
+
|
|
61
|
+
### Examples
|
|
62
|
+
```
|
|
63
|
+
banner_claude-launch_hero-image_20251209_16-9.png
|
|
64
|
+
logo_brand-refresh_horizontal-full-color_20251209.svg
|
|
65
|
+
design_holiday-campaign_email-hero_20251209_dark-mode.psd
|
|
66
|
+
video_product-demo_feature-walkthrough_20251209.mp4
|
|
67
|
+
infographic_evergreen_pricing-comparison_20251209.png
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
## Metadata Schema
|
|
71
|
+
|
|
72
|
+
### Asset Entry (manifest.json)
|
|
73
|
+
```json
|
|
74
|
+
{
|
|
75
|
+
"id": "uuid-v4",
|
|
76
|
+
"name": "Campaign Hero Banner",
|
|
77
|
+
"type": "banner",
|
|
78
|
+
"path": "assets/banners/landing-pages/banner_claude-launch_hero-image_20251209.png",
|
|
79
|
+
"dimensions": { "width": 1920, "height": 1080 },
|
|
80
|
+
"fileSize": 245760,
|
|
81
|
+
"mimeType": "image/png",
|
|
82
|
+
"tags": ["campaign", "hero", "launch"],
|
|
83
|
+
"status": "approved",
|
|
84
|
+
"source": {
|
|
85
|
+
"model": "imagen-4",
|
|
86
|
+
"prompt": "...",
|
|
87
|
+
"createdAt": "2025-12-09T10:30:00Z"
|
|
88
|
+
},
|
|
89
|
+
"version": 2,
|
|
90
|
+
"createdBy": "agent:content-creator",
|
|
91
|
+
"approvedBy": "user:john",
|
|
92
|
+
"approvedAt": "2025-12-09T14:00:00Z"
|
|
93
|
+
}
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
### Version Entry (versions/{id}/v{n}.json)
|
|
97
|
+
```json
|
|
98
|
+
{
|
|
99
|
+
"version": 2,
|
|
100
|
+
"previousVersion": 1,
|
|
101
|
+
"path": "assets/banners/landing-pages/banner_claude-launch_hero-image_20251209_v2.png",
|
|
102
|
+
"changes": "Updated CTA button color to match brand refresh",
|
|
103
|
+
"createdAt": "2025-12-09T12:00:00Z",
|
|
104
|
+
"createdBy": "agent:ui-designer"
|
|
105
|
+
}
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
## Tagging System
|
|
109
|
+
|
|
110
|
+
### Standard Tags
|
|
111
|
+
| Category | Values |
|
|
112
|
+
|----------|--------|
|
|
113
|
+
| status | draft, review, approved, archived |
|
|
114
|
+
| platform | instagram, twitter, linkedin, facebook, youtube, email, web |
|
|
115
|
+
| content-type | promotional, educational, brand, product, testimonial |
|
|
116
|
+
| format | 1x1, 4x5, 9x16, 16x9, story, reel, banner |
|
|
117
|
+
| source | imagen-4, veo-3, user-upload, canva, figma |
|
|
118
|
+
|
|
119
|
+
### Tag Usage
|
|
120
|
+
- Each asset should have: status + platform + content-type
|
|
121
|
+
- Optional: format, source, campaign
|
|
122
|
+
|
|
123
|
+
## File Organization Best Practices
|
|
124
|
+
|
|
125
|
+
1. **One file per variant** - Don't combine dark/light in one file
|
|
126
|
+
2. **Source files separate** - Keep .psd/.fig in same structure
|
|
127
|
+
3. **AI assets timestamped** - Auto-organize by generation date
|
|
128
|
+
4. **Archive don't delete** - Move to `archived/` with date prefix
|
|
129
|
+
5. **Large files external** - Videos > 100MB use cloud storage links
|
|
130
|
+
|
|
131
|
+
## Search Patterns
|
|
132
|
+
|
|
133
|
+
### By Type
|
|
134
|
+
```bash
|
|
135
|
+
# Find all banners
|
|
136
|
+
ls assets/banners/**/*
|
|
137
|
+
```
|
|
138
|
+
|
|
139
|
+
### By Campaign
|
|
140
|
+
```bash
|
|
141
|
+
# Find all assets for specific campaign
|
|
142
|
+
grep -l "claude-launch" .assets/manifest.json
|
|
143
|
+
```
|
|
144
|
+
|
|
145
|
+
### By Status
|
|
146
|
+
```bash
|
|
147
|
+
# Find approved assets only
|
|
148
|
+
jq '.assets[] | select(.status == "approved")' .assets/manifest.json
|
|
149
|
+
```
|
|
150
|
+
|
|
151
|
+
## Cleanup Workflow
|
|
152
|
+
|
|
153
|
+
1. Run `extract-colors.cjs` on new assets
|
|
154
|
+
2. Validate against brand guidelines
|
|
155
|
+
3. Update manifest.json with new entries
|
|
156
|
+
4. Tag appropriately
|
|
157
|
+
5. Remove duplicates/outdated versions
|
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
# Brand Guidelines Template
|
|
2
|
+
|
|
3
|
+
Use this template to create comprehensive brand guidelines for any project.
|
|
4
|
+
|
|
5
|
+
## Document Structure
|
|
6
|
+
|
|
7
|
+
```markdown
|
|
8
|
+
# Brand Guidelines v{X.Y}
|
|
9
|
+
|
|
10
|
+
## Quick Reference
|
|
11
|
+
- **Primary Color:** #XXXXXX
|
|
12
|
+
- **Secondary Color:** #XXXXXX
|
|
13
|
+
- **Primary Font:** {font-family}
|
|
14
|
+
- **Voice:** {3 key traits}
|
|
15
|
+
|
|
16
|
+
## 1. Color Palette
|
|
17
|
+
|
|
18
|
+
### Primary Colors
|
|
19
|
+
| Name | Hex | RGB | Usage |
|
|
20
|
+
|------|-----|-----|-------|
|
|
21
|
+
| {Name} | #{hex} | rgb({r},{g},{b}) | Primary brand color, CTAs, headers |
|
|
22
|
+
| {Name} | #{hex} | rgb({r},{g},{b}) | Supporting accent |
|
|
23
|
+
|
|
24
|
+
### Secondary Colors
|
|
25
|
+
| Name | Hex | RGB | Usage |
|
|
26
|
+
|------|-----|-----|-------|
|
|
27
|
+
| {Name} | #{hex} | rgb({r},{g},{b}) | Secondary elements |
|
|
28
|
+
| {Name} | #{hex} | rgb({r},{g},{b}) | Highlights |
|
|
29
|
+
|
|
30
|
+
### Neutral Palette
|
|
31
|
+
| Name | Hex | RGB | Usage |
|
|
32
|
+
|------|-----|-----|-------|
|
|
33
|
+
| Background | #{hex} | rgb({r},{g},{b}) | Page backgrounds |
|
|
34
|
+
| Text Primary | #{hex} | rgb({r},{g},{b}) | Body text |
|
|
35
|
+
| Text Secondary | #{hex} | rgb({r},{g},{b}) | Captions, muted text |
|
|
36
|
+
| Border | #{hex} | rgb({r},{g},{b}) | Dividers, borders |
|
|
37
|
+
|
|
38
|
+
### Accessibility
|
|
39
|
+
- Text/Background Contrast: {ratio}:1 (WCAG {level})
|
|
40
|
+
- CTA Contrast: {ratio}:1
|
|
41
|
+
- All interactive elements meet WCAG 2.1 AA
|
|
42
|
+
|
|
43
|
+
## 2. Typography
|
|
44
|
+
|
|
45
|
+
### Font Stack
|
|
46
|
+
```css
|
|
47
|
+
--font-heading: '{Font}', sans-serif;
|
|
48
|
+
--font-body: '{Font}', sans-serif;
|
|
49
|
+
--font-mono: '{Font}', monospace;
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
### Type Scale
|
|
53
|
+
| Element | Font | Weight | Size (Desktop/Mobile) | Line Height |
|
|
54
|
+
|---------|------|--------|----------------------|-------------|
|
|
55
|
+
| H1 | {font} | 700 | 48px / 32px | 1.2 |
|
|
56
|
+
| H2 | {font} | 600 | 36px / 28px | 1.25 |
|
|
57
|
+
| H3 | {font} | 600 | 28px / 24px | 1.3 |
|
|
58
|
+
| H4 | {font} | 600 | 24px / 20px | 1.35 |
|
|
59
|
+
| Body | {font} | 400 | 16px / 16px | 1.5 |
|
|
60
|
+
| Small | {font} | 400 | 14px / 14px | 1.5 |
|
|
61
|
+
| Caption | {font} | 400 | 12px / 12px | 1.4 |
|
|
62
|
+
|
|
63
|
+
## 3. Logo Usage
|
|
64
|
+
|
|
65
|
+
### Variants
|
|
66
|
+
- **Primary:** Full horizontal logo with wordmark
|
|
67
|
+
- **Stacked:** Vertical arrangement for square spaces
|
|
68
|
+
- **Icon:** Symbol only for favicons, app icons
|
|
69
|
+
- **Monochrome:** Single color for limited palettes
|
|
70
|
+
|
|
71
|
+
### Clear Space
|
|
72
|
+
Minimum clear space = height of logo mark
|
|
73
|
+
|
|
74
|
+
### Minimum Size
|
|
75
|
+
- Digital: 80px width minimum
|
|
76
|
+
- Print: 25mm width minimum
|
|
77
|
+
|
|
78
|
+
### Don'ts
|
|
79
|
+
- Don't rotate or skew
|
|
80
|
+
- Don't change colors outside approved palette
|
|
81
|
+
- Don't add effects (shadows, gradients)
|
|
82
|
+
- Don't crop or modify proportions
|
|
83
|
+
- Don't place on busy backgrounds
|
|
84
|
+
|
|
85
|
+
## 4. Voice & Tone
|
|
86
|
+
|
|
87
|
+
### Brand Personality
|
|
88
|
+
{Trait 1}: {Description}
|
|
89
|
+
{Trait 2}: {Description}
|
|
90
|
+
{Trait 3}: {Description}
|
|
91
|
+
|
|
92
|
+
### Voice Chart
|
|
93
|
+
| Trait | We Are | We Are Not |
|
|
94
|
+
|-------|--------|------------|
|
|
95
|
+
| {Trait} | {Description} | {Anti-description} |
|
|
96
|
+
|
|
97
|
+
### Tone by Context
|
|
98
|
+
| Context | Tone | Example |
|
|
99
|
+
|---------|------|---------|
|
|
100
|
+
| Marketing | {tone} | "{example}" |
|
|
101
|
+
| Support | {tone} | "{example}" |
|
|
102
|
+
| Error Messages | {tone} | "{example}" |
|
|
103
|
+
| Success | {tone} | "{example}" |
|
|
104
|
+
|
|
105
|
+
### Prohibited Terms
|
|
106
|
+
- {term 1} (reason)
|
|
107
|
+
- {term 2} (reason)
|
|
108
|
+
|
|
109
|
+
## 5. Imagery Guidelines
|
|
110
|
+
|
|
111
|
+
### Photography Style
|
|
112
|
+
- {Lighting preference}
|
|
113
|
+
- {Subject guidelines}
|
|
114
|
+
- {Color treatment}
|
|
115
|
+
|
|
116
|
+
### Illustrations
|
|
117
|
+
- Style: {description}
|
|
118
|
+
- Colors: Brand palette only
|
|
119
|
+
- Stroke: {weight}px
|
|
120
|
+
|
|
121
|
+
### Icons
|
|
122
|
+
- Style: {outlined/filled/duotone}
|
|
123
|
+
- Size: 24px base grid
|
|
124
|
+
- Corner radius: {value}px
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
## Usage
|
|
128
|
+
|
|
129
|
+
1. Copy template above
|
|
130
|
+
2. Fill in brand-specific values
|
|
131
|
+
3. Save as `docs/brand-guidelines.md`
|
|
132
|
+
4. Reference in content workflows
|
|
133
|
+
|
|
134
|
+
## Extractable Fields
|
|
135
|
+
|
|
136
|
+
Scripts can extract:
|
|
137
|
+
- `colors.primary`, `colors.secondary`, `colors.neutral`
|
|
138
|
+
- `typography.heading`, `typography.body`
|
|
139
|
+
- `voice.traits`, `voice.prohibited`
|
|
140
|
+
- `logo.variants`, `logo.minSize`
|