@jaimevalasek/aioson 1.30.0 → 1.30.2

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.
Files changed (93) hide show
  1. package/CHANGELOG.md +18 -0
  2. package/docs/design-previews/cognitive-core-ui-auth.html +95 -0
  3. package/docs/design-previews/cognitive-core-ui-kanban.html +231 -0
  4. package/docs/design-previews/cognitive-core-ui-list-detail.html +174 -0
  5. package/docs/design-previews/cognitive-core-ui-preview.css +1315 -0
  6. package/docs/design-previews/cognitive-core-ui-settings.html +142 -0
  7. package/docs/design-previews/cognitive-core-ui-website.html +190 -1009
  8. package/docs/design-previews/cognitive-core-ui.html +281 -463
  9. package/docs/design-previews/index.html +83 -31
  10. package/package.json +1 -1
  11. package/src/constants.js +578 -514
  12. package/template/.aioson/docs/integrations/dashboard-app-form-publish-mapping.md +183 -0
  13. package/template/.aioson/docs/play/README.md +74 -0
  14. package/template/.aioson/docs/play/agent-usage-guide.md +112 -0
  15. package/template/.aioson/docs/play/app-compatibility-guide.md +117 -0
  16. package/template/.aioson/docs/play/auth-services-and-testing.md +235 -0
  17. package/template/.aioson/docs/play/llm-data-and-bindings.md +238 -0
  18. package/template/.aioson/docs/play/manifest-and-runtime.md +267 -0
  19. package/template/.aioson/docs/play/source-map.md +104 -0
  20. package/template/.aioson/skills/design/aurora-command-ui/SKILL.md +266 -243
  21. package/template/.aioson/skills/design/aurora-command-ui/references/art-direction.md +293 -293
  22. package/template/.aioson/skills/design/aurora-command-ui/references/components.md +827 -827
  23. package/template/.aioson/skills/design/aurora-command-ui/references/dashboards.md +250 -250
  24. package/template/.aioson/skills/design/aurora-command-ui/references/design-tokens.md +585 -585
  25. package/template/.aioson/skills/design/aurora-command-ui/references/motion.md +365 -365
  26. package/template/.aioson/skills/design/aurora-command-ui/references/patterns.md +485 -482
  27. package/template/.aioson/skills/design/aurora-command-ui/references/websites.md +386 -387
  28. package/template/.aioson/skills/design/bold-editorial-ui/SKILL.md +228 -205
  29. package/template/.aioson/skills/design/bold-editorial-ui/references/art-direction.md +338 -338
  30. package/template/.aioson/skills/design/bold-editorial-ui/references/components.md +977 -977
  31. package/template/.aioson/skills/design/bold-editorial-ui/references/dashboards.md +218 -218
  32. package/template/.aioson/skills/design/bold-editorial-ui/references/design-tokens.md +326 -326
  33. package/template/.aioson/skills/design/bold-editorial-ui/references/motion.md +461 -461
  34. package/template/.aioson/skills/design/bold-editorial-ui/references/patterns.md +293 -293
  35. package/template/.aioson/skills/design/bold-editorial-ui/references/websites.md +352 -352
  36. package/template/.aioson/skills/design/clean-saas-ui/SKILL.md +233 -210
  37. package/template/.aioson/skills/design/clean-saas-ui/references/art-direction.md +319 -319
  38. package/template/.aioson/skills/design/clean-saas-ui/references/components.md +365 -365
  39. package/template/.aioson/skills/design/clean-saas-ui/references/dashboards.md +196 -196
  40. package/template/.aioson/skills/design/clean-saas-ui/references/design-tokens.md +244 -244
  41. package/template/.aioson/skills/design/clean-saas-ui/references/motion.md +235 -235
  42. package/template/.aioson/skills/design/clean-saas-ui/references/patterns.md +215 -215
  43. package/template/.aioson/skills/design/clean-saas-ui/references/websites.md +295 -295
  44. package/template/.aioson/skills/design/cognitive-core-ui/SKILL.md +239 -203
  45. package/template/.aioson/skills/design/cognitive-core-ui/references/art-direction.md +339 -339
  46. package/template/.aioson/skills/design/cognitive-core-ui/references/components.md +417 -407
  47. package/template/.aioson/skills/design/cognitive-core-ui/references/dashboards.md +289 -272
  48. package/template/.aioson/skills/design/cognitive-core-ui/references/design-tokens.md +525 -524
  49. package/template/.aioson/skills/design/cognitive-core-ui/references/motion.md +279 -279
  50. package/template/.aioson/skills/design/cognitive-core-ui/references/patterns.md +355 -289
  51. package/template/.aioson/skills/design/cognitive-core-ui/references/websites.md +443 -437
  52. package/template/.aioson/skills/design/glassmorphism-ui/SKILL.md +245 -222
  53. package/template/.aioson/skills/design/glassmorphism-ui/references/art-direction.md +159 -159
  54. package/template/.aioson/skills/design/glassmorphism-ui/references/components.md +498 -498
  55. package/template/.aioson/skills/design/glassmorphism-ui/references/dashboards.md +236 -236
  56. package/template/.aioson/skills/design/glassmorphism-ui/references/design-tokens.md +274 -274
  57. package/template/.aioson/skills/design/glassmorphism-ui/references/motion.md +355 -355
  58. package/template/.aioson/skills/design/glassmorphism-ui/references/patterns.md +198 -198
  59. package/template/.aioson/skills/design/glassmorphism-ui/references/websites.md +307 -307
  60. package/template/.aioson/skills/design/interface-design/SKILL.md +68 -47
  61. package/template/.aioson/skills/design/interface-design/references/components-and-states.md +105 -105
  62. package/template/.aioson/skills/design/interface-design/references/design-directions.md +101 -101
  63. package/template/.aioson/skills/design/interface-design/references/handoff-and-quality.md +92 -71
  64. package/template/.aioson/skills/design/interface-design/references/intent-and-domain.md +74 -74
  65. package/template/.aioson/skills/design/interface-design/references/tokens-and-depth.md +173 -173
  66. package/template/.aioson/skills/design/neo-brutalist-ui/SKILL.md +236 -213
  67. package/template/.aioson/skills/design/neo-brutalist-ui/references/art-direction.md +228 -228
  68. package/template/.aioson/skills/design/neo-brutalist-ui/references/components.md +855 -855
  69. package/template/.aioson/skills/design/neo-brutalist-ui/references/dashboards.md +334 -334
  70. package/template/.aioson/skills/design/neo-brutalist-ui/references/design-tokens.md +342 -342
  71. package/template/.aioson/skills/design/neo-brutalist-ui/references/motion.md +286 -286
  72. package/template/.aioson/skills/design/neo-brutalist-ui/references/patterns.md +458 -458
  73. package/template/.aioson/skills/design/neo-brutalist-ui/references/websites.md +723 -723
  74. package/template/.aioson/skills/design/premium-command-center-ui/SKILL.md +83 -62
  75. package/template/.aioson/skills/design/premium-command-center-ui/references/operations.md +74 -74
  76. package/template/.aioson/skills/design/premium-command-center-ui/references/patterns.md +116 -116
  77. package/template/.aioson/skills/design/premium-command-center-ui/references/validation.md +47 -47
  78. package/template/.aioson/skills/design/premium-command-center-ui/references/visual-system.md +215 -215
  79. package/template/.aioson/skills/design/pt.squarespace.com/.skill-meta.json +31 -31
  80. package/template/.aioson/skills/design/pt.squarespace.com/SKILL.md +94 -66
  81. package/template/.aioson/skills/design/pt.squarespace.com/references/components.md +366 -366
  82. package/template/.aioson/skills/design/pt.squarespace.com/references/design-tokens.md +150 -150
  83. package/template/.aioson/skills/design/pt.squarespace.com/references/motion.md +270 -270
  84. package/template/.aioson/skills/design/pt.squarespace.com/references/patterns.md +189 -189
  85. package/template/.aioson/skills/design/pt.squarespace.com/references/websites.md +161 -161
  86. package/template/.aioson/skills/design/warm-craft-ui/SKILL.md +232 -209
  87. package/template/.aioson/skills/design/warm-craft-ui/references/art-direction.md +324 -324
  88. package/template/.aioson/skills/design/warm-craft-ui/references/components.md +508 -508
  89. package/template/.aioson/skills/design/warm-craft-ui/references/dashboards.md +223 -223
  90. package/template/.aioson/skills/design/warm-craft-ui/references/design-tokens.md +374 -374
  91. package/template/.aioson/skills/design/warm-craft-ui/references/motion.md +356 -356
  92. package/template/.aioson/skills/design/warm-craft-ui/references/patterns.md +288 -288
  93. package/template/.aioson/skills/design/warm-craft-ui/references/websites.md +289 -289
@@ -1,213 +1,236 @@
1
- ---
2
- name: neo-brutalist-ui
3
- description: Neo-Brutalist UI is a design system for bold, personality-driven interfaces that embrace raw aesthetics, thick borders, hard shadows, and deliberate visual tension. Use it when `design_skill: neo-brutalist-ui` is set in project.context.md OR when the user explicitly asks for "brutalist", "neo-brutalist", "chunky UI", "indie", "bold borders", "hard shadows", "raw aesthetic", "devtools", "hacker", "playful bold", "anti-corporate", "punk UI", or similar. Ideal for indie products, devtools, creative tools, personal sites, side projects, hackathon projects, educational platforms, and any product where personality and memorability matter more than neutrality. Supports apps, dashboards, and websites — light by default with an energetic dark variant. Do NOT use this skill unless explicitly selected.
4
- ---
5
-
6
- # Neo-Brutalist UI
7
-
8
- Neo-Brutalist UI sits at the intersection of **structural honesty** and **chromatic energy** — a design system for products that refuse to look like every other SaaS app. Thick borders, hard shadows, monospace type, and saturated colors are not decoration: they are the structure.
9
-
10
- Inspiration: Gumroad (old redesign), Poolsuite.net, Notion blog sticker aesthetics, bfrss.be, terminal/CLI interfaces.
11
-
12
- **This is one visual system.** Never combine it with another design skill.
13
-
14
- ## Package structure
15
-
16
- ```text
17
- .aioson/skills/design/neo-brutalist-ui/
18
- SKILL.md ← you are here (load this first)
19
- references/
20
- art-direction.md ← 5 expression modes, signature moves, anti-generic tests
21
- design-tokens.md ← CSS variables light + dark, thick borders, hard shadows, patterns
22
- components.md 23 components: brutalist cards, push buttons, full-grid tables, sticker badges, etc.
23
- patterns.md App shell, 6 page patterns, responsive rules
24
- dashboards.md 5 dashboard presets + chart palette + flat-fill rules
25
- websites.md 4 hero patterns, 8 section patterns, anti-patterns
26
- motion.md Push mechanic, mechanical timings, minimal scroll animations
27
- ```
28
-
29
- ## Activation rules
30
-
31
- - Apply this package **only** when `project.context.md` contains `design_skill: "neo-brutalist-ui"` or the user explicitly chooses it.
32
- - If another design skill is selected, do **not** load this package.
33
- - Never auto-select this skill always require explicit confirmation.
34
- - If no skill is set yet, the active agent must ask or confirm before applying.
35
-
36
- ## Responsibility boundary
37
-
38
- This skill defines:
39
- - Visual direction and aesthetic DNA
40
- - Design tokens (colors, typography, spacing, radius, shadows)
41
- - Component vocabulary and anatomy
42
- - Page composition patterns
43
- - Theme switching behavior (light default / dark optional)
44
-
45
- This skill does **not** decide:
46
- - Stack (React, Vue, Blade, HTML, etc.)
47
- - Output format (single file, multi-file, CSS modules, Tailwind, etc.)
48
- - Icon library choice
49
- - Whether a theme toggle exists in the product (the agent decides)
50
-
51
- ## Loading guide
52
-
53
- Always load only what the current task needs:
54
-
55
- | Task | Load |
56
- |---|---|
57
- | Any UI work | `references/design-tokens.md` |
58
- | Reusable components | `references/design-tokens.md` + `references/components.md` |
59
- | Dashboard or admin panel | `references/art-direction.md` + `references/design-tokens.md` + `references/components.md` + `references/patterns.md` + `references/dashboards.md` |
60
- | Detail / settings page | `references/art-direction.md` + `references/design-tokens.md` + `references/components.md` + `references/patterns.md` |
61
- | Landing page or website | `references/art-direction.md` + `references/design-tokens.md` + `references/components.md` + `references/websites.md` |
62
- | Motion / animation | add `references/motion.md` when push mechanics and interaction detail matter |
63
- | Full UI build | all seven reference files |
64
-
65
- ## Visual signature — three pillars
66
-
67
- 1. **Structural honesty** - Thick, visible borders. Hard shadows with no blur, only solid offsets. Elements feel built, not drawn. Every component exposes its structure: border, fill, shadow. No gradients, no blur, no transparency. What you see is what exists.
68
- 2. **Chromatic energy** - Saturated primary colors as accents. Off-white or pure black backgrounds. Maximum contrast. No pastels (that is glassmorphism), no desaturation (that is clean-saas). Colors are vivid, direct, and confident, like protest posters or zine covers.
69
- 3. **Typographic personality** - Mono or bold sans-serif as the baseline. Headings may be ultra-bold or uppercase mono. Typography has attitude: it is not neutral, not elegant, but direct. Large sizes with tight tracking for headings; mono for metadata and labels.
70
-
71
- ## Theme system
72
-
73
- ```html
74
- <div data-theme="light"> <!-- or data-theme="dark" -->
75
- ```
76
-
77
- - **Light (default)**: fundo off-white (#FFFDF5), borders pretas, sombras pretas offset, cores saturadas
78
- - **Dark**: near-black background (#1A1A1A), light borders, colored offset shadows, saturated earthy colors (not neon)
79
- - Toggle available
80
-
81
- If the user does not specify: default to **light with a theme toggle** in the top bar.
82
-
83
- ## Visual DNA
84
-
85
- ### Colors — light theme (default)
86
- - Background void: `#F5F0E8` (warm off-white, newspaper feel)
87
- - Background base: `#FFFDF5` (cream white main background)
88
- - Surface: `#FFFFFF` (pure white cards)
89
- - Elevated: `#F5F0E8` (off-white hover/nested)
90
- - Primary accent: `#FACC15` (yellow-400 — THE brutalist accent)
91
- - Text heading: `#1A1A1A` (near-black)
92
- - Text primary: `#2A2A2A`
93
- - Text secondary: `#666666`
94
- - Text muted: `#999999`
95
-
96
- ### Colors — dark theme
97
- - Background void: `#111111`
98
- - Background base: `#1A1A1A`
99
- - Surface: `#242424`
100
- - Elevated: `#2E2E2E`
101
- - Primary accent: `#FACC15` (yellow stays strong)
102
- - Text heading: `#FFFFFF`
103
- - Text primary: `#E0E0E0`
104
-
105
- ### Typography
106
- - Display/headings: `Space Grotesk`, system-ui, sans-serif — geometric with personality, not neutral
107
- - Body: `Inter`, system-ui, sans-serif
108
- - Mono: `JetBrains Mono`, ui-monospace — **first-class citizen** in this skill. Used for labels, metadata, badges, status, code, and any technical content.
109
- - Headings: weight 700–800, tracking tight
110
- - Body: weight 400, tracking normal
111
- - Mono metadata: uppercase, letter-spacing 0.05em
112
-
113
- ### Layout structure (app)
114
- ```
115
- ┌──────────────────────────────────────────────────────────┐
116
- │ SIDEBAR (240px) │ TOP BAR (56px) │
117
- border-right: 3px border-bottom: 3px
118
- Nav items: mono font ├──────────────────────────────────┤
119
- Active: bg accent │ CONTENT AREA │
120
- text black bg-base (cream)
121
- │ (brutalist cards / tables)
122
- └────────────────────────┴──────────────────────────────────┘
123
- ```
124
-
125
- ### Signature details
126
- - **The push mechanic**: buttons and cards shrink shadow + translate on `:active` — feels like a physical press
127
- - **Hard shadows**: `4px 4px 0 #1A1A1A` zero blur. This is the single strongest visual differentiator
128
- - **Thick borders**: 2–3px on everything interactive. No borderless components
129
- - **Square + pill extremes**: `border-radius: 0` (cards, inputs, buttons) OR `border-radius: 9999px` (badges, tags). Nothing in between
130
- - **Mono for all data**: numbers, dates, status text, labels all `font-mono`
131
- - **Chunky controls**: buttons 44–52px height (vs 36px in clean-saas)brutalist is chunky, not elegant
132
- - **Full-grid tables**: every cell has a visible border. No minimal table borders
133
-
134
- ## Application rules
135
-
136
- - Treat `references/design-tokens.md` as the source of truth for ALL tokens.
137
- - Treat `references/art-direction.md` as the source of truth for expression modes and anti-generic decisions.
138
- - Never combine this package with `interface-design`, `warm-craft-ui`, `clean-saas-ui`, `bold-editorial-ui`, or any other design skill.
139
- - Reuse the project's component library if one exists — map Neo-Brutalist tokens onto it instead of rebuilding primitives.
140
- - Adapt code examples to the active stack. Reference snippets are design specifications, not copy-paste code.
141
- - Accessibility, responsiveness, and production semantics are the agent's responsibility (not this skill).
142
-
143
- ## Intent before visuals
144
-
145
- Before choosing layout, answer all three:
146
-
147
- 1. Who is the human using this page right now?
148
- 2. What is the main action or decision they must complete?
149
- 3. How should this interface feel in concrete words, not generic labels?
150
-
151
- Bad answers:
152
- - "for indie developers"
153
- - "show a dashboard"
154
- - "bold and brutalist"
155
-
156
- Good answers:
157
- - "indie hacker checking if their side project is growing wants raw numbers fast, no corporate fluff"
158
- - "developer reviewing build failures needs to see status at a glance without context switching"
159
- - "unapologetic, fast, honest looks hand-built by someone who knows exactly what they're doing"
160
-
161
- ## Workflow discipline
162
-
163
- 1. Choose one of the 5 expression modes from `references/art-direction.md` before writing any HTML or CSS.
164
- 2. Name one signature move and repeat it intentionally across the page.
165
- 3. Run the **Brutality Test**: remove all thick borders and hard shadows. If the interface now looks like a generic clean-saas output, the personality was decorative, not structural. Rebuild.
166
- 4. Build from tokens first, then components, then page composition.
167
- 5. Validate state parity before finishing: default, hover, active, focus, disabled.
168
- 6. Validate contrast: body text WCAG AA, mono on accent must remain legible.
169
-
170
- ## Non-negotiable quality gates
171
-
172
- - Never use `box-shadow` with blur-radius > 0. Hard offset only.
173
- - Never use `border-radius` between 6px and 9998px. Zero or pill only.
174
- - Never use `border: 1px solid #ccc` on interactive components. Minimum 2px solid #1A1A1A (light) or #E0E0E0 (dark).
175
- - Never use gradient fills. All colors are flat and solid.
176
- - Never use `backdrop-filter: blur()`. Brutalist UI has zero blur.
177
- - Mono font must be applied to ALL numbers, dates, IDs, statuses, and technical labels — not just code blocks.
178
- - Every interactive element with a hard shadow must implement the push mechanic on `:active`.
179
- - Tables must never stack into card lists on mobile — they scroll horizontally.
180
- - Hardcoded colors, arbitrary shadows, and one-off border widths are design-system failures.
181
- - Sameness is failure. If the result could pass for a default Tailwind UI starter with a yellow accent, iterate.
182
- - Every page must pass the **Brutality Test**: structure must be brutalist even with all color removed.
183
- - Every page must pass the **Corporate Test**: no enterprise product would ship this (good — that's the goal).
184
-
185
- ## Positioning vs other skills
186
-
187
- | Aspect | neo-brutalist-ui | warm-craft-ui | clean-saas-ui | bold-editorial-ui |
188
- |--------|-----------------|---------------|---------------|-------------------|
189
- | Accent | Yellow (#FACC15) | Terracotta | Blue (#2563EB) | Red-orange |
190
- | Borders | 2–3px black, visible on everything | 1px subtle | 1px gray | 1px minimal |
191
- | Shadows | Hard offset (zero blur) | Warm blur | Very subtle blur | Dramatic blur |
192
- | Radius | 0 or 9999px (nothing between) | Large (16px+) | Medium (8px) | Minimal |
193
- | Typography | Mono + bold sans | Serif headings | All sans | Display sans |
194
- | Polish | Anti-polish (intentional) | Warm polish | Professional | Cinematic |
195
- | Best for | Indie, devtools, hackathon, creative | B2C, productivity | B2B SaaS, admin | Marketing, portfolio |
196
-
197
- ## Delivery modes
198
-
199
- ### Greenfield
200
- 1. Choose expression mode (indie / devtool / creative / zine / dashboard punk) from `art-direction.md`
201
- 2. Answer the three Intent questions
202
- 3. Load relevant references
203
- 4. Apply token scope from `design-tokens.md`
204
- 5. Compose layout from `patterns.md` or `websites.md`
205
- 6. Build components from `components.md`
206
- 7. Run Brutality Test before presenting
207
-
208
- ### Brownfield
209
- 1. Audit existing UI before rewriting
210
- 2. Map Neo-Brutalist tokens onto the existing component library
211
- 3. Apply thick borders and hard shadows systematically — don't add them ad-hoc
212
- 4. Consolidate duplicate component variants before introducing new ones
213
- 5. Prefer targeted upgrades over full rewrites unless the user asks for a redesign
1
+ ---
2
+ name: neo-brutalist-ui
3
+ description: >-
4
+ Neo-Brutalist UI is a design system for bold, personality-driven interfaces that embrace raw aesthetics, thick borders, hard shadows, and deliberate visual tension. Use it when `design_skill: neo-brutalist-ui` is set in project.context.md OR when the user explicitly asks for "brutalist", "neo-brutalist", "chunky UI", "indie", "bold borders", "hard shadows", "raw aesthetic", "devtools", "hacker", "playful bold", "anti-corporate", "punk UI", or similar. Ideal for indie products, devtools, creative tools, personal sites, side projects, hackathon projects, educational platforms, and any product where personality and memorability matter more than neutrality. Supports apps, dashboards, and websites — light by default with an energetic dark variant. Do NOT use this skill unless explicitly selected.
5
+ ---
6
+
7
+ # Neo-Brutalist UI
8
+
9
+ Neo-Brutalist UI sits at the intersection of **structural honesty** and **chromatic energy** — a design system for products that refuse to look like every other SaaS app. Thick borders, hard shadows, monospace type, and saturated colors are not decoration: they are the structure.
10
+
11
+ Inspiration: Gumroad (old redesign), Poolsuite.net, Notion blog sticker aesthetics, bfrss.be, terminal/CLI interfaces.
12
+
13
+ **This is one visual system.** Never combine it with another design skill.
14
+
15
+ ## Package structure
16
+
17
+ ```text
18
+ .aioson/skills/design/neo-brutalist-ui/
19
+ SKILL.md ← you are here (load this first)
20
+ references/
21
+ art-direction.md ← 5 expression modes, signature moves, anti-generic tests
22
+ design-tokens.md CSS variables light + dark, thick borders, hard shadows, patterns
23
+ components.md 23 components: brutalist cards, push buttons, full-grid tables, sticker badges, etc.
24
+ patterns.md App shell, 6 page patterns, responsive rules
25
+ dashboards.md 5 dashboard presets + chart palette + flat-fill rules
26
+ websites.md 4 hero patterns, 8 section patterns, anti-patterns
27
+ motion.md ← Push mechanic, mechanical timings, minimal scroll animations
28
+ ```
29
+
30
+ ## Activation rules
31
+
32
+ - Apply this package **only** when `project.context.md` contains `design_skill: "neo-brutalist-ui"` or the user explicitly chooses it.
33
+ - If another design skill is selected, do **not** load this package.
34
+ - Never auto-select this skill always require explicit confirmation.
35
+ - If no skill is set yet, the active agent must ask or confirm before applying.
36
+
37
+ ## Responsibility boundary
38
+
39
+ This skill defines:
40
+ - Visual direction and aesthetic DNA
41
+ - Design tokens (colors, typography, spacing, radius, shadows)
42
+ - Component vocabulary and anatomy
43
+ - Page composition patterns
44
+ - Theme switching behavior (light default / dark optional)
45
+
46
+ This skill does **not** decide:
47
+ - Stack (React, Vue, Blade, HTML, etc.)
48
+ - Output format (single file, multi-file, CSS modules, Tailwind, etc.)
49
+ - Icon library choice
50
+ - Whether a theme toggle exists in the product (the agent decides)
51
+
52
+ ## Loading guide
53
+
54
+ Always load only what the current task needs:
55
+
56
+ | Task | Load |
57
+ |---|---|
58
+ | Any UI work | `references/design-tokens.md` |
59
+ | Reusable components | `references/design-tokens.md` + `references/components.md` |
60
+ | Dashboard or admin panel | `references/art-direction.md` + `references/design-tokens.md` + `references/components.md` + `references/patterns.md` + `references/dashboards.md` |
61
+ | Detail / settings page | `references/art-direction.md` + `references/design-tokens.md` + `references/components.md` + `references/patterns.md` |
62
+ | Landing page or website | `references/art-direction.md` + `references/design-tokens.md` + `references/components.md` + `references/websites.md` |
63
+ | Motion / animation | add `references/motion.md` when push mechanics and interaction detail matter |
64
+ | Full UI build | all seven reference files |
65
+
66
+ ## Visual signature — three pillars
67
+
68
+ 1. **Structural honesty** - Thick, visible borders. Hard shadows with no blur, only solid offsets. Elements feel built, not drawn. Every component exposes its structure: border, fill, shadow. No gradients, no blur, no transparency. What you see is what exists.
69
+ 2. **Chromatic energy** - Saturated primary colors as accents. Off-white or pure black backgrounds. Maximum contrast. No pastels (that is glassmorphism), no desaturation (that is clean-saas). Colors are vivid, direct, and confident, like protest posters or zine covers.
70
+ 3. **Typographic personality** - Mono or bold sans-serif as the baseline. Headings may be ultra-bold or uppercase mono. Typography has attitude: it is not neutral, not elegant, but direct. Large sizes with tight tracking for headings; mono for metadata and labels.
71
+
72
+ ## Theme system
73
+
74
+ ```html
75
+ <div data-theme="light"> <!-- or data-theme="dark" -->
76
+ ```
77
+
78
+ - **Light (default)**: fundo off-white (#FFFDF5), borders pretas, sombras pretas offset, cores saturadas
79
+ - **Dark**: near-black background (#1A1A1A), light borders, colored offset shadows, saturated earthy colors (not neon)
80
+ - Toggle available
81
+
82
+ If the user does not specify: default to **light with a theme toggle** in the top bar.
83
+
84
+ ## Visual DNA
85
+
86
+ ### Colors light theme (default)
87
+ - Background void: `#F5F0E8` (warm off-white, newspaper feel)
88
+ - Background base: `#FFFDF5` (cream white — main background)
89
+ - Surface: `#FFFFFF` (pure white cards)
90
+ - Elevated: `#F5F0E8` (off-white hover/nested)
91
+ - Primary accent: `#FACC15` (yellow-400 — THE brutalist accent)
92
+ - Text heading: `#1A1A1A` (near-black)
93
+ - Text primary: `#2A2A2A`
94
+ - Text secondary: `#666666`
95
+ - Text muted: `#999999`
96
+
97
+ ### Colors dark theme
98
+ - Background void: `#111111`
99
+ - Background base: `#1A1A1A`
100
+ - Surface: `#242424`
101
+ - Elevated: `#2E2E2E`
102
+ - Primary accent: `#FACC15` (yellow stays strong)
103
+ - Text heading: `#FFFFFF`
104
+ - Text primary: `#E0E0E0`
105
+
106
+ ### Typography
107
+ - Display/headings: `Space Grotesk`, system-ui, sans-serif — geometric with personality, not neutral
108
+ - Body: `Inter`, system-ui, sans-serif
109
+ - Mono: `JetBrains Mono`, ui-monospace — **first-class citizen** in this skill. Used for labels, metadata, badges, status, code, and any technical content.
110
+ - Headings: weight 700–800, tracking tight
111
+ - Body: weight 400, tracking normal
112
+ - Mono metadata: uppercase, letter-spacing 0.05em
113
+
114
+ ### Layout structure (app)
115
+ ```
116
+ ┌──────────────────────────────────────────────────────────┐
117
+ SIDEBAR (240px) TOP BAR (56px)
118
+ border-right: 3px │ border-bottom: 3px │
119
+ Nav items: mono font ├──────────────────────────────────┤
120
+ Active: bg accent CONTENT AREA
121
+ text black bg-base (cream)
122
+ │ │ (brutalist cards / tables) │
123
+ └────────────────────────┴──────────────────────────────────┘
124
+ ```
125
+
126
+ ### Signature details
127
+ - **The push mechanic**: buttons and cards shrink shadow + translate on `:active` feels like a physical press
128
+ - **Hard shadows**: `4px 4px 0 #1A1A1A` — zero blur. This is the single strongest visual differentiator
129
+ - **Thick borders**: 2–3px on everything interactive. No borderless components
130
+ - **Square + pill extremes**: `border-radius: 0` (cards, inputs, buttons) OR `border-radius: 9999px` (badges, tags). Nothing in between
131
+ - **Mono for all data**: numbers, dates, status text, labelsall `font-mono`
132
+ - **Chunky controls**: buttons 44–52px height (vs 36px in clean-saas) brutalist is chunky, not elegant
133
+ - **Full-grid tables**: every cell has a visible border. No minimal table borders
134
+
135
+ ## Application rules
136
+
137
+ - Treat `references/design-tokens.md` as the source of truth for ALL tokens.
138
+ - Treat `references/art-direction.md` as the source of truth for expression modes and anti-generic decisions.
139
+ - Never combine this package with `interface-design`, `warm-craft-ui`, `clean-saas-ui`, `bold-editorial-ui`, or any other design skill.
140
+ - Reuse the project's component library if one exists map Neo-Brutalist tokens onto it instead of rebuilding primitives.
141
+ - Adapt code examples to the active stack. Reference snippets are design specifications, not copy-paste code.
142
+ - Accessibility, responsiveness, and production semantics are the agent's responsibility (not this skill).
143
+
144
+ ## Execution quality gates
145
+
146
+ These gates override any reference file when they conflict.
147
+
148
+ Before implementation:
149
+ - Load the relevant references from the loading guide; do not build from this SKILL.md alone.
150
+ - Decide the surface type (app, dashboard, landing page, marketing site, tool, game) and one domain-specific signature move before writing layout code.
151
+ - Establish the token layer first: fonts, colors, spacing, radius, shadow/depth, motion, breakpoints, and component states. Do not scatter raw colors, one-off shadows, arbitrary font sizes, or ad hoc radii.
152
+ - Use intentional font delivery. Prefer local/framework font APIs when available; if a named font cannot be loaded, define a credible fallback stack and preserve the intended contrast.
153
+ - For websites and landing pages, use visual assets that reveal the product, place, person, object, UI state, or domain. Do not ship a hero made only of gradients, icons, and cards.
154
+ - For landing-page heroes, make the brand, product, place, person, or literal offer visible in the first viewport; include a real or generated bitmap/product visual when inspection matters.
155
+ - Use icons from the project's icon library or lucide when available. Do not use text pills where a standard icon button/control is expected.
156
+ - Build responsive constraints with grid minmax, aspect-ratio, fixed control heights, and overflow rules so text, controls, tables, cards, and media cannot overlap or resize unpredictably.
157
+ - Use discrete text tokens and stable line-height. Do not use viewport-width font scaling or negative letter-spacing.
158
+ - Do not put cards inside cards. If a reference says nested card, use an unframed row, divider, inset section, or modal unless an existing component contract explicitly requires that hierarchy.
159
+ - Use motion as product feedback: hover, focus, active, loading, reveal, navigation, and state transitions. Always include a prefers-reduced-motion fallback.
160
+
161
+ Before delivery:
162
+ - Inspect the result at mobile and desktop widths. If a browser is available, use screenshots; otherwise perform static CSS/DOM review.
163
+ - Fix overlap, clipped text, illegible contrast, missing states, unsupported font loading, missing assets, raw palette drift, and generic template composition before presenting.
164
+ - Do not add isolated blurred-circle background decorations. If a reference suggests that pattern, reinterpret it as a subtle full-bleed ambient field or remove it.
165
+
166
+ ## Intent before visuals
167
+
168
+ Before choosing layout, answer all three:
169
+
170
+ 1. Who is the human using this page right now?
171
+ 2. What is the main action or decision they must complete?
172
+ 3. How should this interface feel in concrete words, not generic labels?
173
+
174
+ Bad answers:
175
+ - "for indie developers"
176
+ - "show a dashboard"
177
+ - "bold and brutalist"
178
+
179
+ Good answers:
180
+ - "indie hacker checking if their side project is growing wants raw numbers fast, no corporate fluff"
181
+ - "developer reviewing build failures needs to see status at a glance without context switching"
182
+ - "unapologetic, fast, honest looks hand-built by someone who knows exactly what they're doing"
183
+
184
+ ## Workflow discipline
185
+
186
+ 1. Choose one of the 5 expression modes from `references/art-direction.md` before writing any HTML or CSS.
187
+ 2. Name one signature move and repeat it intentionally across the page.
188
+ 3. Run the **Brutality Test**: remove all thick borders and hard shadows. If the interface now looks like a generic clean-saas output, the personality was decorative, not structural. Rebuild.
189
+ 4. Build from tokens first, then components, then page composition.
190
+ 5. Validate state parity before finishing: default, hover, active, focus, disabled.
191
+ 6. Validate contrast: body text WCAG AA, mono on accent must remain legible.
192
+
193
+ ## Non-negotiable quality gates
194
+
195
+ - Never use `box-shadow` with blur-radius > 0. Hard offset only.
196
+ - Never use `border-radius` between 6px and 9998px. Zero or pill only.
197
+ - Never use `border: 1px solid #ccc` on interactive components. Minimum 2px solid #1A1A1A (light) or #E0E0E0 (dark).
198
+ - Never use gradient fills. All colors are flat and solid.
199
+ - Never use `backdrop-filter: blur()`. Brutalist UI has zero blur.
200
+ - Mono font must be applied to ALL numbers, dates, IDs, statuses, and technical labels — not just code blocks.
201
+ - Every interactive element with a hard shadow must implement the push mechanic on `:active`.
202
+ - Tables must never stack into card lists on mobile — they scroll horizontally.
203
+ - Hardcoded colors, arbitrary shadows, and one-off border widths are design-system failures.
204
+ - Sameness is failure. If the result could pass for a default Tailwind UI starter with a yellow accent, iterate.
205
+ - Every page must pass the **Brutality Test**: structure must be brutalist even with all color removed.
206
+ - Every page must pass the **Corporate Test**: no enterprise product would ship this (good — that's the goal).
207
+
208
+ ## Positioning vs other skills
209
+
210
+ | Aspect | neo-brutalist-ui | warm-craft-ui | clean-saas-ui | bold-editorial-ui |
211
+ |--------|-----------------|---------------|---------------|-------------------|
212
+ | Accent | Yellow (#FACC15) | Terracotta | Blue (#2563EB) | Red-orange |
213
+ | Borders | 2–3px black, visible on everything | 1px subtle | 1px gray | 1px minimal |
214
+ | Shadows | Hard offset (zero blur) | Warm blur | Very subtle blur | Dramatic blur |
215
+ | Radius | 0 or 9999px (nothing between) | Large (16px+) | Medium (8px) | Minimal |
216
+ | Typography | Mono + bold sans | Serif headings | All sans | Display sans |
217
+ | Polish | Anti-polish (intentional) | Warm polish | Professional | Cinematic |
218
+ | Best for | Indie, devtools, hackathon, creative | B2C, productivity | B2B SaaS, admin | Marketing, portfolio |
219
+
220
+ ## Delivery modes
221
+
222
+ ### Greenfield
223
+ 1. Choose expression mode (indie / devtool / creative / zine / dashboard punk) from `art-direction.md`
224
+ 2. Answer the three Intent questions
225
+ 3. Load relevant references
226
+ 4. Apply token scope from `design-tokens.md`
227
+ 5. Compose layout from `patterns.md` or `websites.md`
228
+ 6. Build components from `components.md`
229
+ 7. Run Brutality Test before presenting
230
+
231
+ ### Brownfield
232
+ 1. Audit existing UI before rewriting
233
+ 2. Map Neo-Brutalist tokens onto the existing component library
234
+ 3. Apply thick borders and hard shadows systematically — don't add them ad-hoc
235
+ 4. Consolidate duplicate component variants before introducing new ones
236
+ 5. Prefer targeted upgrades over full rewrites unless the user asks for a redesign