pm-workflow-studio 0.1.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/.claude/CLAUDE.md +31 -0
- package/.claude/agents/demand-analyst.md +26 -0
- package/.claude/agents/dev-planner.md +22 -0
- package/.claude/agents/product-manager.md +25 -0
- package/.claude/agents/quality-reviewer.md +31 -0
- package/.claude/agents/tech-architect.md +22 -0
- package/.claude/agents/ui-designer.md +39 -0
- package/.claude/commands/pm-workflow/analyze.md +6 -0
- package/.claude/commands/pm-workflow/architect.md +6 -0
- package/.claude/commands/pm-workflow/deliver.md +6 -0
- package/.claude/commands/pm-workflow/design.md +6 -0
- package/.claude/commands/pm-workflow/help.md +6 -0
- package/.claude/commands/pm-workflow/init.md +8 -0
- package/.claude/commands/pm-workflow/plan.md +6 -0
- package/.claude/commands/pm-workflow/review.md +6 -0
- package/.claude/commands/pm-workflow/status.md +6 -0
- package/.claude/commands/pm-workflow.md +13 -0
- package/.claude/settings.json +15 -0
- package/.claude/skills/demand-analysis/SKILL.md +50 -0
- package/.claude/skills/demand-analysis/templates/handoff-prd.md +39 -0
- package/.claude/skills/demand-analysis/templates/prd.md +85 -0
- package/.claude/skills/dev-task-planning/SKILL.md +37 -0
- package/.claude/skills/dev-task-planning/templates/dev-tasks.md +54 -0
- package/.claude/skills/impeccable/SKILL.md +169 -0
- package/.claude/skills/impeccable/reference/adapt.md +190 -0
- package/.claude/skills/impeccable/reference/animate.md +175 -0
- package/.claude/skills/impeccable/reference/audit.md +133 -0
- package/.claude/skills/impeccable/reference/bolder.md +113 -0
- package/.claude/skills/impeccable/reference/brand.md +118 -0
- package/.claude/skills/impeccable/reference/clarify.md +174 -0
- package/.claude/skills/impeccable/reference/codex.md +105 -0
- package/.claude/skills/impeccable/reference/cognitive-load.md +106 -0
- package/.claude/skills/impeccable/reference/color-and-contrast.md +105 -0
- package/.claude/skills/impeccable/reference/colorize.md +154 -0
- package/.claude/skills/impeccable/reference/craft.md +123 -0
- package/.claude/skills/impeccable/reference/critique.md +236 -0
- package/.claude/skills/impeccable/reference/delight.md +302 -0
- package/.claude/skills/impeccable/reference/distill.md +111 -0
- package/.claude/skills/impeccable/reference/document.md +427 -0
- package/.claude/skills/impeccable/reference/extract.md +69 -0
- package/.claude/skills/impeccable/reference/harden.md +347 -0
- package/.claude/skills/impeccable/reference/heuristics-scoring.md +234 -0
- package/.claude/skills/impeccable/reference/interaction-design.md +195 -0
- package/.claude/skills/impeccable/reference/layout.md +141 -0
- package/.claude/skills/impeccable/reference/live.md +622 -0
- package/.claude/skills/impeccable/reference/motion-design.md +109 -0
- package/.claude/skills/impeccable/reference/onboard.md +234 -0
- package/.claude/skills/impeccable/reference/optimize.md +258 -0
- package/.claude/skills/impeccable/reference/overdrive.md +130 -0
- package/.claude/skills/impeccable/reference/personas.md +179 -0
- package/.claude/skills/impeccable/reference/polish.md +242 -0
- package/.claude/skills/impeccable/reference/product.md +62 -0
- package/.claude/skills/impeccable/reference/quieter.md +99 -0
- package/.claude/skills/impeccable/reference/responsive-design.md +114 -0
- package/.claude/skills/impeccable/reference/shape.md +165 -0
- package/.claude/skills/impeccable/reference/spatial-design.md +100 -0
- package/.claude/skills/impeccable/reference/teach.md +156 -0
- package/.claude/skills/impeccable/reference/typeset.md +124 -0
- package/.claude/skills/impeccable/reference/typography.md +159 -0
- package/.claude/skills/impeccable/reference/ux-writing.md +107 -0
- package/.claude/skills/impeccable/scripts/cleanup-deprecated.mjs +284 -0
- package/.claude/skills/impeccable/scripts/command-metadata.json +94 -0
- package/.claude/skills/impeccable/scripts/critique-storage.mjs +242 -0
- package/.claude/skills/impeccable/scripts/design-parser.mjs +820 -0
- package/.claude/skills/impeccable/scripts/detect-csp.mjs +198 -0
- package/.claude/skills/impeccable/scripts/detect.mjs +21 -0
- package/.claude/skills/impeccable/scripts/detector/browser/injected/index.mjs +1688 -0
- package/.claude/skills/impeccable/scripts/detector/cli/main.mjs +232 -0
- package/.claude/skills/impeccable/scripts/detector/detect-antipatterns-browser.js +4030 -0
- package/.claude/skills/impeccable/scripts/detector/detect-antipatterns.mjs +43 -0
- package/.claude/skills/impeccable/scripts/detector/engines/browser/detect-url.mjs +251 -0
- package/.claude/skills/impeccable/scripts/detector/engines/regex/detect-text.mjs +420 -0
- package/.claude/skills/impeccable/scripts/detector/engines/static-html/css-cascade.mjs +954 -0
- package/.claude/skills/impeccable/scripts/detector/engines/static-html/detect-html.mjs +174 -0
- package/.claude/skills/impeccable/scripts/detector/engines/visual/screenshot-contrast.mjs +189 -0
- package/.claude/skills/impeccable/scripts/detector/findings.mjs +12 -0
- package/.claude/skills/impeccable/scripts/detector/node/file-system.mjs +198 -0
- package/.claude/skills/impeccable/scripts/detector/profile/profiler.mjs +166 -0
- package/.claude/skills/impeccable/scripts/detector/registry/antipatterns.mjs +278 -0
- package/.claude/skills/impeccable/scripts/detector/rules/checks.mjs +1948 -0
- package/.claude/skills/impeccable/scripts/detector/shared/color.mjs +124 -0
- package/.claude/skills/impeccable/scripts/detector/shared/constants.mjs +101 -0
- package/.claude/skills/impeccable/scripts/detector/shared/page.mjs +7 -0
- package/.claude/skills/impeccable/scripts/impeccable-paths.mjs +110 -0
- package/.claude/skills/impeccable/scripts/is-generated.mjs +69 -0
- package/.claude/skills/impeccable/scripts/live-accept.mjs +595 -0
- package/.claude/skills/impeccable/scripts/live-browser-session.js +123 -0
- package/.claude/skills/impeccable/scripts/live-browser.js +4860 -0
- package/.claude/skills/impeccable/scripts/live-complete.mjs +75 -0
- package/.claude/skills/impeccable/scripts/live-completion.mjs +18 -0
- package/.claude/skills/impeccable/scripts/live-inject.mjs +446 -0
- package/.claude/skills/impeccable/scripts/live-poll.mjs +200 -0
- package/.claude/skills/impeccable/scripts/live-resume.mjs +48 -0
- package/.claude/skills/impeccable/scripts/live-server.mjs +838 -0
- package/.claude/skills/impeccable/scripts/live-session-store.mjs +254 -0
- package/.claude/skills/impeccable/scripts/live-status.mjs +47 -0
- package/.claude/skills/impeccable/scripts/live-wrap.mjs +632 -0
- package/.claude/skills/impeccable/scripts/live.mjs +247 -0
- package/.claude/skills/impeccable/scripts/load-context.mjs +141 -0
- package/.claude/skills/impeccable/scripts/modern-screenshot.umd.js +14 -0
- package/.claude/skills/impeccable/scripts/pin.mjs +214 -0
- package/.claude/skills/pm-workflow/SKILL.md +371 -0
- package/.claude/skills/pm-workflow/assets/design-themes/README.md +56 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/OPEN_DESIGN_COMMIT +1 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/OPEN_DESIGN_IMPORT.md +28 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/OPEN_DESIGN_LICENSE +201 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/README.md +103 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/agentic/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/airbnb/DESIGN.md +393 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/airbnb/examples.html +23 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/airtable/DESIGN.md +92 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/apple/DESIGN.md +250 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/apple/examples.html +23 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/application/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/arc/DESIGN.md +152 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/artistic/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/atelier-zero/DESIGN.md +316 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/bento/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/binance/DESIGN.md +348 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/bmw/DESIGN.md +183 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/bmw-m/DESIGN.md +246 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/bold/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/brutalism/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/bugatti/DESIGN.md +271 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/cafe/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/cal/DESIGN.md +262 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/canva/DESIGN.md +157 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/cisco/DESIGN.md +201 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/claude/DESIGN.md +315 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/clay/DESIGN.md +307 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/claymorphism/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/clean/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/clickhouse/DESIGN.md +284 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/cohere/DESIGN.md +269 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/coinbase/DESIGN.md +132 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/colorful/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/composio/DESIGN.md +310 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/contemporary/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/corporate/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/cosmic/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/creative/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/cursor/DESIGN.md +312 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/dashboard/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/default/DESIGN.md +62 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/discord/DESIGN.md +162 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/dithered/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/doodle/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/dramatic/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/duolingo/DESIGN.md +154 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/editorial/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/elegant/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/elevenlabs/DESIGN.md +268 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/energetic/DESIGN.md +72 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/enterprise/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/expo/DESIGN.md +284 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/expressive/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/fantasy/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/ferrari/DESIGN.md +317 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/figma/DESIGN.md +223 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/flat/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/framer/DESIGN.md +249 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/friendly/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/futuristic/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/glassmorphism/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/gradient/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/hashicorp/DESIGN.md +281 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/hud/DESIGN.md +173 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/huggingface/DESIGN.md +149 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/huggingface/examples.html +11 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/intercom/DESIGN.md +149 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/kami/DESIGN.md +410 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/kraken/DESIGN.md +128 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/lamborghini/DESIGN.md +291 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/levels/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/linear-app/DESIGN.md +370 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/linear-app/examples.html +56 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/lingo/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/loom/DESIGN.md +201 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/lovable/DESIGN.md +301 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/luxury/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/mastercard/DESIGN.md +368 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/material/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/material/examples.html +11 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/meta/DESIGN.md +369 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/minimal/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/minimax/DESIGN.md +260 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/mintlify/DESIGN.md +329 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/miro/DESIGN.md +111 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/mission-control/DESIGN.md +474 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/mistral-ai/DESIGN.md +264 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/modern/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/mongodb/DESIGN.md +269 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/mongodb/examples.html +14 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/mono/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/neobrutalism/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/neon/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/neumorphism/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/nike/DESIGN.md +366 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/notion/DESIGN.md +312 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/notion/examples.html +64 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/nvidia/DESIGN.md +296 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/ollama/DESIGN.md +270 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/openai/DESIGN.md +140 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/openai/examples.html +14 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/opencode-ai/DESIGN.md +284 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/pacman/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/paper/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/perspective/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/pinterest/DESIGN.md +233 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/playstation/DESIGN.md +367 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/posthog/DESIGN.md +259 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/premium/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/professional/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/publication/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/raycast/DESIGN.md +271 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/raycast/examples.html +11 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/refined/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/renault/DESIGN.md +314 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/replicate/DESIGN.md +264 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/resend/DESIGN.md +306 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/retro/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/revolut/DESIGN.md +188 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/runwayml/DESIGN.md +247 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/sanity/DESIGN.md +360 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/sentry/DESIGN.md +265 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/shadcn/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/shadcn/examples.html +24 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/shopify/DESIGN.md +353 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/shopify/examples.html +11 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/simple/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/skeumorphism/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/sleek/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/spacex/DESIGN.md +197 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/spacious/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/spotify/DESIGN.md +249 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/starbucks/DESIGN.md +583 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/storytelling/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/stripe/DESIGN.md +325 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/stripe/examples.html +58 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/supabase/DESIGN.md +258 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/supabase/examples.html +26 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/superhuman/DESIGN.md +255 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/tesla/DESIGN.md +289 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/tetris/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/theverge/DESIGN.md +342 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/together-ai/DESIGN.md +266 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/totality-festival/DESIGN.md +206 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/trading-terminal/DESIGN.md +178 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/uber/DESIGN.md +298 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/urdu/DESIGN.md +1002 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/vercel/DESIGN.md +313 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/vercel/examples.html +55 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/vibrant/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/vintage/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/vodafone/DESIGN.md +426 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/voltagent/DESIGN.md +326 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/warm-editorial/DESIGN.md +65 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/warp/DESIGN.md +256 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/webex/DESIGN.md +207 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/webflow/DESIGN.md +95 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/webflow/examples.html +11 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/wired/DESIGN.md +281 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/wise/DESIGN.md +176 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/x-ai/DESIGN.md +260 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/x-ai/examples.html +12 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/xiaohongshu/DESIGN.md +402 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/zapier/DESIGN.md +331 -0
- package/.claude/skills/pm-workflow/assets/design-themes/revenuecat/DESIGN.md +209 -0
- package/.claude/skills/pm-workflow/assets/design-themes/revenuecat/examples.html +122 -0
- package/.claude/skills/pm-workflow/assets/design-themes/vben/DESIGN.md +685 -0
- package/.claude/skills/pm-workflow/assets/design-themes/vben/examples.html +155 -0
- package/.claude/skills/pm-workflow/assets/vendor/flow-viewer/MERMAID_LICENSE +21 -0
- package/.claude/skills/pm-workflow/assets/vendor/flow-viewer/SVG_PAN_ZOOM_LICENSE +23 -0
- package/.claude/skills/pm-workflow/assets/vendor/flow-viewer/THIRD_PARTY_LICENSES.md +21 -0
- package/.claude/skills/pm-workflow/assets/vendor/flow-viewer/mermaid.min.js +3298 -0
- package/.claude/skills/pm-workflow/assets/vendor/flow-viewer/svg-pan-zoom.min.js +3 -0
- package/.claude/skills/pm-workflow/references/commands/analyze.md +39 -0
- package/.claude/skills/pm-workflow/references/commands/architect.md +41 -0
- package/.claude/skills/pm-workflow/references/commands/deliver.md +29 -0
- package/.claude/skills/pm-workflow/references/commands/design.md +92 -0
- package/.claude/skills/pm-workflow/references/commands/help.md +24 -0
- package/.claude/skills/pm-workflow/references/commands/init.md +40 -0
- package/.claude/skills/pm-workflow/references/commands/plan.md +41 -0
- package/.claude/skills/pm-workflow/references/commands/review.md +33 -0
- package/.claude/skills/pm-workflow/references/commands/status.md +20 -0
- package/.claude/skills/pm-workflow/scripts/package_delivery.js +195 -0
- package/.claude/skills/pm-workflow/scripts/review_stage.js +622 -0
- package/.claude/skills/quality-review/SKILL.md +49 -0
- package/.claude/skills/quality-review/templates/review-stage.md +39 -0
- package/.claude/skills/tech-architecture/SKILL.md +49 -0
- package/.claude/skills/tech-architecture/templates/handoff-architecture.md +28 -0
- package/.claude/skills/tech-architecture/templates/tech-architecture.md +54 -0
- package/.claude/skills/ui-prototype-design/SKILL.md +125 -0
- package/.claude/skills/ui-prototype-design/templates/handoff-ui.md +40 -0
- package/.claude/skills/ui-prototype-design/templates/prototype-review.md +57 -0
- package/.claude/skills/ui-prototype-design/templates/ui-design.md +142 -0
- package/.codex/SKILL.md +374 -0
- package/.codex/agents/demand-analyst.toml +87 -0
- package/.codex/agents/dev-planner.toml +47 -0
- package/.codex/agents/openai.yaml +4 -0
- package/.codex/agents/product-manager.toml +81 -0
- package/.codex/agents/quality-reviewer.toml +76 -0
- package/.codex/agents/tech-architect.toml +57 -0
- package/.codex/agents/ui-designer.toml +132 -0
- package/.codex/assets/design-themes/README.md +56 -0
- package/.codex/assets/design-themes/open-design/OPEN_DESIGN_COMMIT +1 -0
- package/.codex/assets/design-themes/open-design/OPEN_DESIGN_IMPORT.md +28 -0
- package/.codex/assets/design-themes/open-design/OPEN_DESIGN_LICENSE +201 -0
- package/.codex/assets/design-themes/open-design/README.md +103 -0
- package/.codex/assets/design-themes/open-design/agentic/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/airbnb/DESIGN.md +393 -0
- package/.codex/assets/design-themes/open-design/airbnb/examples.html +23 -0
- package/.codex/assets/design-themes/open-design/airtable/DESIGN.md +92 -0
- package/.codex/assets/design-themes/open-design/apple/DESIGN.md +250 -0
- package/.codex/assets/design-themes/open-design/apple/examples.html +23 -0
- package/.codex/assets/design-themes/open-design/application/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/arc/DESIGN.md +152 -0
- package/.codex/assets/design-themes/open-design/artistic/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/atelier-zero/DESIGN.md +316 -0
- package/.codex/assets/design-themes/open-design/bento/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/binance/DESIGN.md +348 -0
- package/.codex/assets/design-themes/open-design/bmw/DESIGN.md +183 -0
- package/.codex/assets/design-themes/open-design/bmw-m/DESIGN.md +246 -0
- package/.codex/assets/design-themes/open-design/bold/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/brutalism/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/bugatti/DESIGN.md +271 -0
- package/.codex/assets/design-themes/open-design/cafe/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/cal/DESIGN.md +262 -0
- package/.codex/assets/design-themes/open-design/canva/DESIGN.md +157 -0
- package/.codex/assets/design-themes/open-design/cisco/DESIGN.md +201 -0
- package/.codex/assets/design-themes/open-design/claude/DESIGN.md +315 -0
- package/.codex/assets/design-themes/open-design/clay/DESIGN.md +307 -0
- package/.codex/assets/design-themes/open-design/claymorphism/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/clean/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/clickhouse/DESIGN.md +284 -0
- package/.codex/assets/design-themes/open-design/cohere/DESIGN.md +269 -0
- package/.codex/assets/design-themes/open-design/coinbase/DESIGN.md +132 -0
- package/.codex/assets/design-themes/open-design/colorful/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/composio/DESIGN.md +310 -0
- package/.codex/assets/design-themes/open-design/contemporary/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/corporate/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/cosmic/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/creative/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/cursor/DESIGN.md +312 -0
- package/.codex/assets/design-themes/open-design/dashboard/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/default/DESIGN.md +62 -0
- package/.codex/assets/design-themes/open-design/discord/DESIGN.md +162 -0
- package/.codex/assets/design-themes/open-design/dithered/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/doodle/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/dramatic/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/duolingo/DESIGN.md +154 -0
- package/.codex/assets/design-themes/open-design/editorial/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/elegant/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/elevenlabs/DESIGN.md +268 -0
- package/.codex/assets/design-themes/open-design/energetic/DESIGN.md +72 -0
- package/.codex/assets/design-themes/open-design/enterprise/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/expo/DESIGN.md +284 -0
- package/.codex/assets/design-themes/open-design/expressive/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/fantasy/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/ferrari/DESIGN.md +317 -0
- package/.codex/assets/design-themes/open-design/figma/DESIGN.md +223 -0
- package/.codex/assets/design-themes/open-design/flat/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/framer/DESIGN.md +249 -0
- package/.codex/assets/design-themes/open-design/friendly/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/futuristic/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/glassmorphism/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/gradient/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/hashicorp/DESIGN.md +281 -0
- package/.codex/assets/design-themes/open-design/hud/DESIGN.md +173 -0
- package/.codex/assets/design-themes/open-design/huggingface/DESIGN.md +149 -0
- package/.codex/assets/design-themes/open-design/huggingface/examples.html +11 -0
- package/.codex/assets/design-themes/open-design/intercom/DESIGN.md +149 -0
- package/.codex/assets/design-themes/open-design/kami/DESIGN.md +410 -0
- package/.codex/assets/design-themes/open-design/kraken/DESIGN.md +128 -0
- package/.codex/assets/design-themes/open-design/lamborghini/DESIGN.md +291 -0
- package/.codex/assets/design-themes/open-design/levels/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/linear-app/DESIGN.md +370 -0
- package/.codex/assets/design-themes/open-design/linear-app/examples.html +56 -0
- package/.codex/assets/design-themes/open-design/lingo/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/loom/DESIGN.md +201 -0
- package/.codex/assets/design-themes/open-design/lovable/DESIGN.md +301 -0
- package/.codex/assets/design-themes/open-design/luxury/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/mastercard/DESIGN.md +368 -0
- package/.codex/assets/design-themes/open-design/material/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/material/examples.html +11 -0
- package/.codex/assets/design-themes/open-design/meta/DESIGN.md +369 -0
- package/.codex/assets/design-themes/open-design/minimal/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/minimax/DESIGN.md +260 -0
- package/.codex/assets/design-themes/open-design/mintlify/DESIGN.md +329 -0
- package/.codex/assets/design-themes/open-design/miro/DESIGN.md +111 -0
- package/.codex/assets/design-themes/open-design/mission-control/DESIGN.md +474 -0
- package/.codex/assets/design-themes/open-design/mistral-ai/DESIGN.md +264 -0
- package/.codex/assets/design-themes/open-design/modern/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/mongodb/DESIGN.md +269 -0
- package/.codex/assets/design-themes/open-design/mongodb/examples.html +14 -0
- package/.codex/assets/design-themes/open-design/mono/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/neobrutalism/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/neon/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/neumorphism/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/nike/DESIGN.md +366 -0
- package/.codex/assets/design-themes/open-design/notion/DESIGN.md +312 -0
- package/.codex/assets/design-themes/open-design/notion/examples.html +64 -0
- package/.codex/assets/design-themes/open-design/nvidia/DESIGN.md +296 -0
- package/.codex/assets/design-themes/open-design/ollama/DESIGN.md +270 -0
- package/.codex/assets/design-themes/open-design/openai/DESIGN.md +140 -0
- package/.codex/assets/design-themes/open-design/openai/examples.html +14 -0
- package/.codex/assets/design-themes/open-design/opencode-ai/DESIGN.md +284 -0
- package/.codex/assets/design-themes/open-design/pacman/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/paper/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/perspective/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/pinterest/DESIGN.md +233 -0
- package/.codex/assets/design-themes/open-design/playstation/DESIGN.md +367 -0
- package/.codex/assets/design-themes/open-design/posthog/DESIGN.md +259 -0
- package/.codex/assets/design-themes/open-design/premium/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/professional/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/publication/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/raycast/DESIGN.md +271 -0
- package/.codex/assets/design-themes/open-design/raycast/examples.html +11 -0
- package/.codex/assets/design-themes/open-design/refined/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/renault/DESIGN.md +314 -0
- package/.codex/assets/design-themes/open-design/replicate/DESIGN.md +264 -0
- package/.codex/assets/design-themes/open-design/resend/DESIGN.md +306 -0
- package/.codex/assets/design-themes/open-design/retro/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/revolut/DESIGN.md +188 -0
- package/.codex/assets/design-themes/open-design/runwayml/DESIGN.md +247 -0
- package/.codex/assets/design-themes/open-design/sanity/DESIGN.md +360 -0
- package/.codex/assets/design-themes/open-design/sentry/DESIGN.md +265 -0
- package/.codex/assets/design-themes/open-design/shadcn/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/shadcn/examples.html +24 -0
- package/.codex/assets/design-themes/open-design/shopify/DESIGN.md +353 -0
- package/.codex/assets/design-themes/open-design/shopify/examples.html +11 -0
- package/.codex/assets/design-themes/open-design/simple/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/skeumorphism/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/sleek/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/spacex/DESIGN.md +197 -0
- package/.codex/assets/design-themes/open-design/spacious/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/spotify/DESIGN.md +249 -0
- package/.codex/assets/design-themes/open-design/starbucks/DESIGN.md +583 -0
- package/.codex/assets/design-themes/open-design/storytelling/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/stripe/DESIGN.md +325 -0
- package/.codex/assets/design-themes/open-design/stripe/examples.html +58 -0
- package/.codex/assets/design-themes/open-design/supabase/DESIGN.md +258 -0
- package/.codex/assets/design-themes/open-design/supabase/examples.html +26 -0
- package/.codex/assets/design-themes/open-design/superhuman/DESIGN.md +255 -0
- package/.codex/assets/design-themes/open-design/tesla/DESIGN.md +289 -0
- package/.codex/assets/design-themes/open-design/tetris/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/theverge/DESIGN.md +342 -0
- package/.codex/assets/design-themes/open-design/together-ai/DESIGN.md +266 -0
- package/.codex/assets/design-themes/open-design/totality-festival/DESIGN.md +206 -0
- package/.codex/assets/design-themes/open-design/trading-terminal/DESIGN.md +178 -0
- package/.codex/assets/design-themes/open-design/uber/DESIGN.md +298 -0
- package/.codex/assets/design-themes/open-design/urdu/DESIGN.md +1002 -0
- package/.codex/assets/design-themes/open-design/vercel/DESIGN.md +313 -0
- package/.codex/assets/design-themes/open-design/vercel/examples.html +55 -0
- package/.codex/assets/design-themes/open-design/vibrant/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/vintage/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/vodafone/DESIGN.md +426 -0
- package/.codex/assets/design-themes/open-design/voltagent/DESIGN.md +326 -0
- package/.codex/assets/design-themes/open-design/warm-editorial/DESIGN.md +65 -0
- package/.codex/assets/design-themes/open-design/warp/DESIGN.md +256 -0
- package/.codex/assets/design-themes/open-design/webex/DESIGN.md +207 -0
- package/.codex/assets/design-themes/open-design/webflow/DESIGN.md +95 -0
- package/.codex/assets/design-themes/open-design/webflow/examples.html +11 -0
- package/.codex/assets/design-themes/open-design/wired/DESIGN.md +281 -0
- package/.codex/assets/design-themes/open-design/wise/DESIGN.md +176 -0
- package/.codex/assets/design-themes/open-design/x-ai/DESIGN.md +260 -0
- package/.codex/assets/design-themes/open-design/x-ai/examples.html +12 -0
- package/.codex/assets/design-themes/open-design/xiaohongshu/DESIGN.md +402 -0
- package/.codex/assets/design-themes/open-design/zapier/DESIGN.md +331 -0
- package/.codex/assets/design-themes/revenuecat/DESIGN.md +209 -0
- package/.codex/assets/design-themes/revenuecat/examples.html +122 -0
- package/.codex/assets/design-themes/vben/DESIGN.md +685 -0
- package/.codex/assets/design-themes/vben/examples.html +155 -0
- package/.codex/assets/vendor/flow-viewer/MERMAID_LICENSE +21 -0
- package/.codex/assets/vendor/flow-viewer/SVG_PAN_ZOOM_LICENSE +23 -0
- package/.codex/assets/vendor/flow-viewer/THIRD_PARTY_LICENSES.md +21 -0
- package/.codex/assets/vendor/flow-viewer/mermaid.min.js +3298 -0
- package/.codex/assets/vendor/flow-viewer/svg-pan-zoom.min.js +3 -0
- package/.codex/bundled-skills/impeccable/SKILL.md +163 -0
- package/.codex/bundled-skills/impeccable/agents/openai.yaml +4 -0
- package/.codex/bundled-skills/impeccable/reference/adapt.md +190 -0
- package/.codex/bundled-skills/impeccable/reference/animate.md +175 -0
- package/.codex/bundled-skills/impeccable/reference/audit.md +132 -0
- package/.codex/bundled-skills/impeccable/reference/bolder.md +113 -0
- package/.codex/bundled-skills/impeccable/reference/brand.md +118 -0
- package/.codex/bundled-skills/impeccable/reference/clarify.md +174 -0
- package/.codex/bundled-skills/impeccable/reference/codex.md +105 -0
- package/.codex/bundled-skills/impeccable/reference/cognitive-load.md +106 -0
- package/.codex/bundled-skills/impeccable/reference/color-and-contrast.md +105 -0
- package/.codex/bundled-skills/impeccable/reference/colorize.md +154 -0
- package/.codex/bundled-skills/impeccable/reference/craft.md +123 -0
- package/.codex/bundled-skills/impeccable/reference/critique.md +259 -0
- package/.codex/bundled-skills/impeccable/reference/delight.md +302 -0
- package/.codex/bundled-skills/impeccable/reference/distill.md +111 -0
- package/.codex/bundled-skills/impeccable/reference/document.md +427 -0
- package/.codex/bundled-skills/impeccable/reference/extract.md +68 -0
- package/.codex/bundled-skills/impeccable/reference/harden.md +347 -0
- package/.codex/bundled-skills/impeccable/reference/heuristics-scoring.md +234 -0
- package/.codex/bundled-skills/impeccable/reference/interaction-design.md +195 -0
- package/.codex/bundled-skills/impeccable/reference/layout.md +141 -0
- package/.codex/bundled-skills/impeccable/reference/live.md +622 -0
- package/.codex/bundled-skills/impeccable/reference/motion-design.md +109 -0
- package/.codex/bundled-skills/impeccable/reference/onboard.md +234 -0
- package/.codex/bundled-skills/impeccable/reference/optimize.md +258 -0
- package/.codex/bundled-skills/impeccable/reference/overdrive.md +130 -0
- package/.codex/bundled-skills/impeccable/reference/personas.md +179 -0
- package/.codex/bundled-skills/impeccable/reference/polish.md +242 -0
- package/.codex/bundled-skills/impeccable/reference/product.md +62 -0
- package/.codex/bundled-skills/impeccable/reference/quieter.md +99 -0
- package/.codex/bundled-skills/impeccable/reference/responsive-design.md +114 -0
- package/.codex/bundled-skills/impeccable/reference/shape.md +165 -0
- package/.codex/bundled-skills/impeccable/reference/spatial-design.md +100 -0
- package/.codex/bundled-skills/impeccable/reference/teach.md +156 -0
- package/.codex/bundled-skills/impeccable/reference/typeset.md +124 -0
- package/.codex/bundled-skills/impeccable/reference/typography.md +159 -0
- package/.codex/bundled-skills/impeccable/reference/ux-writing.md +107 -0
- package/.codex/bundled-skills/impeccable/scripts/cleanup-deprecated.mjs +284 -0
- package/.codex/bundled-skills/impeccable/scripts/command-metadata.json +94 -0
- package/.codex/bundled-skills/impeccable/scripts/critique-storage.mjs +242 -0
- package/.codex/bundled-skills/impeccable/scripts/design-parser.mjs +820 -0
- package/.codex/bundled-skills/impeccable/scripts/detect-csp.mjs +198 -0
- package/.codex/bundled-skills/impeccable/scripts/detect.mjs +21 -0
- package/.codex/bundled-skills/impeccable/scripts/detector/browser/injected/index.mjs +1688 -0
- package/.codex/bundled-skills/impeccable/scripts/detector/cli/main.mjs +232 -0
- package/.codex/bundled-skills/impeccable/scripts/detector/detect-antipatterns-browser.js +4030 -0
- package/.codex/bundled-skills/impeccable/scripts/detector/detect-antipatterns.mjs +43 -0
- package/.codex/bundled-skills/impeccable/scripts/detector/engines/browser/detect-url.mjs +251 -0
- package/.codex/bundled-skills/impeccable/scripts/detector/engines/regex/detect-text.mjs +420 -0
- package/.codex/bundled-skills/impeccable/scripts/detector/engines/static-html/css-cascade.mjs +954 -0
- package/.codex/bundled-skills/impeccable/scripts/detector/engines/static-html/detect-html.mjs +174 -0
- package/.codex/bundled-skills/impeccable/scripts/detector/engines/visual/screenshot-contrast.mjs +189 -0
- package/.codex/bundled-skills/impeccable/scripts/detector/findings.mjs +12 -0
- package/.codex/bundled-skills/impeccable/scripts/detector/node/file-system.mjs +198 -0
- package/.codex/bundled-skills/impeccable/scripts/detector/profile/profiler.mjs +166 -0
- package/.codex/bundled-skills/impeccable/scripts/detector/registry/antipatterns.mjs +278 -0
- package/.codex/bundled-skills/impeccable/scripts/detector/rules/checks.mjs +1948 -0
- package/.codex/bundled-skills/impeccable/scripts/detector/shared/color.mjs +124 -0
- package/.codex/bundled-skills/impeccable/scripts/detector/shared/constants.mjs +101 -0
- package/.codex/bundled-skills/impeccable/scripts/detector/shared/page.mjs +7 -0
- package/.codex/bundled-skills/impeccable/scripts/impeccable-paths.mjs +110 -0
- package/.codex/bundled-skills/impeccable/scripts/is-generated.mjs +69 -0
- package/.codex/bundled-skills/impeccable/scripts/live-accept.mjs +595 -0
- package/.codex/bundled-skills/impeccable/scripts/live-browser-session.js +123 -0
- package/.codex/bundled-skills/impeccable/scripts/live-browser.js +4860 -0
- package/.codex/bundled-skills/impeccable/scripts/live-complete.mjs +75 -0
- package/.codex/bundled-skills/impeccable/scripts/live-completion.mjs +18 -0
- package/.codex/bundled-skills/impeccable/scripts/live-inject.mjs +446 -0
- package/.codex/bundled-skills/impeccable/scripts/live-poll.mjs +200 -0
- package/.codex/bundled-skills/impeccable/scripts/live-resume.mjs +48 -0
- package/.codex/bundled-skills/impeccable/scripts/live-server.mjs +838 -0
- package/.codex/bundled-skills/impeccable/scripts/live-session-store.mjs +254 -0
- package/.codex/bundled-skills/impeccable/scripts/live-status.mjs +47 -0
- package/.codex/bundled-skills/impeccable/scripts/live-wrap.mjs +632 -0
- package/.codex/bundled-skills/impeccable/scripts/live.mjs +247 -0
- package/.codex/bundled-skills/impeccable/scripts/load-context.mjs +141 -0
- package/.codex/bundled-skills/impeccable/scripts/modern-screenshot.umd.js +14 -0
- package/.codex/bundled-skills/impeccable/scripts/pin.mjs +214 -0
- package/.codex/references/commands/analyze.md +39 -0
- package/.codex/references/commands/architect.md +41 -0
- package/.codex/references/commands/deliver.md +29 -0
- package/.codex/references/commands/design.md +92 -0
- package/.codex/references/commands/help.md +24 -0
- package/.codex/references/commands/init.md +40 -0
- package/.codex/references/commands/plan.md +41 -0
- package/.codex/references/commands/review.md +33 -0
- package/.codex/references/commands/status.md +20 -0
- package/.codex/role-skills/demand-analysis/SKILL.md +50 -0
- package/.codex/role-skills/demand-analysis/templates/handoff-prd.md +39 -0
- package/.codex/role-skills/demand-analysis/templates/prd.md +85 -0
- package/.codex/role-skills/dev-task-planning/SKILL.md +37 -0
- package/.codex/role-skills/dev-task-planning/templates/dev-tasks.md +54 -0
- package/.codex/role-skills/quality-review/SKILL.md +49 -0
- package/.codex/role-skills/quality-review/templates/review-stage.md +39 -0
- package/.codex/role-skills/tech-architecture/SKILL.md +49 -0
- package/.codex/role-skills/tech-architecture/templates/handoff-architecture.md +28 -0
- package/.codex/role-skills/tech-architecture/templates/tech-architecture.md +54 -0
- package/.codex/role-skills/ui-prototype-design/SKILL.md +125 -0
- package/.codex/role-skills/ui-prototype-design/templates/handoff-ui.md +40 -0
- package/.codex/role-skills/ui-prototype-design/templates/prototype-review.md +57 -0
- package/.codex/role-skills/ui-prototype-design/templates/ui-design.md +142 -0
- package/.codex/scripts/package_delivery.js +195 -0
- package/.codex/scripts/review_stage.js +622 -0
- package/.codex/templates/AGENTS.md +44 -0
- package/.codex/templates/delivery-README.md +37 -0
- package/.codex/templates/framework-AGENTS.md +74 -0
- package/.codex/templates/framework-README.md +65 -0
- package/.codex/templates/project-config.md +117 -0
- package/.codex/templates/prototype-README.md +45 -0
- package/.codex/templates/workflow-state.json +47 -0
- package/README.md +28 -0
- package/bin/pmflow.js +463 -0
- package/package.json +30 -0
|
@@ -0,0 +1,197 @@
|
|
|
1
|
+
# Design System Inspired by SpaceX
|
|
2
|
+
|
|
3
|
+
> Category: Media & Consumer
|
|
4
|
+
> Space technology. Stark black and white, full-bleed imagery, futuristic.
|
|
5
|
+
|
|
6
|
+
## 1. Visual Theme & Atmosphere
|
|
7
|
+
|
|
8
|
+
SpaceX's website is a full-screen cinematic experience that treats aerospace engineering like a film — every section is a scene, every photograph is a frame, and the interface disappears entirely behind the imagery. The design is pure black (`#000000`) with photography of rockets, space, and planets occupying 100% of the viewport. Text overlays sit directly on these photographs with no background panels, cards, or containers — just type on image, bold and unapologetic.
|
|
9
|
+
|
|
10
|
+
The typography system uses D-DIN, an industrial geometric typeface with DIN heritage (the German industrial standard). The defining characteristic is that virtually ALL text is uppercase with positive letter-spacing (0.96px–1.17px), creating a military/aerospace labeling system where every word feels stenciled onto a spacecraft hull. D-DIN-Bold at 48px with uppercase and 0.96px tracking for the hero creates headlines that feel like mission briefing titles. Even body text at 16px maintains the uppercase/tracked treatment at smaller scales.
|
|
11
|
+
|
|
12
|
+
What makes SpaceX distinctive is its radical minimalism: no shadows, no borders (except one ghost button border at `rgba(240,240,250,0.35)`), no color (only black and a spectral near-white `#f0f0fa`), no cards, no grids. The only visual element is photography + text. The ghost button with `rgba(240,240,250,0.1)` background and 32px radius is the sole interactive element — barely visible, floating over the imagery like a heads-up display. This isn't a design system in the traditional sense — it's a photographic exhibition with a type system and a single button.
|
|
13
|
+
|
|
14
|
+
**Key Characteristics:**
|
|
15
|
+
- Pure black canvas with full-viewport cinematic photography — the interface is invisible
|
|
16
|
+
- D-DIN / D-DIN-Bold — industrial DIN-heritage typeface
|
|
17
|
+
- Universal uppercase + positive letter-spacing (0.96px–1.17px) — aerospace stencil aesthetic
|
|
18
|
+
- Near-white spectral text (`#f0f0fa`) — not pure white, a slight blue-violet tint
|
|
19
|
+
- Zero shadows, zero cards, zero containers — text on image only
|
|
20
|
+
- Single ghost button: `rgba(240,240,250,0.1)` background with spectral border
|
|
21
|
+
- Full-viewport sections — each section is a cinematic "scene"
|
|
22
|
+
- No decorative elements — every pixel serves the photography
|
|
23
|
+
|
|
24
|
+
## 2. Color Palette & Roles
|
|
25
|
+
|
|
26
|
+
### Primary
|
|
27
|
+
- **Space Black** (`#000000`): Page background, the void of space — at 50% opacity for overlay gradient
|
|
28
|
+
- **Spectral White** (`#f0f0fa`): Text color — not pure white, a slight blue-violet tint that mimics starlight
|
|
29
|
+
|
|
30
|
+
### Interactive
|
|
31
|
+
- **Ghost Surface** (`rgba(240, 240, 250, 0.1)`): Button background — nearly invisible, 10% opacity
|
|
32
|
+
- **Ghost Border** (`rgba(240, 240, 250, 0.35)`): Button border — spectral, 35% opacity
|
|
33
|
+
- **Hover White** (`var(--white-100)`): Link hover state — full spectral white
|
|
34
|
+
|
|
35
|
+
### Gradient
|
|
36
|
+
- **Dark Overlay** (`rgba(0, 0, 0, 0.5)`): Gradient overlay on photographs to ensure text legibility
|
|
37
|
+
|
|
38
|
+
## 3. Typography Rules
|
|
39
|
+
|
|
40
|
+
### Font Families
|
|
41
|
+
- **Display**: `D-DIN-Bold` — bold industrial geometric
|
|
42
|
+
- **Body / UI**: `D-DIN`, fallbacks: `Arial, Verdana`
|
|
43
|
+
|
|
44
|
+
### Hierarchy
|
|
45
|
+
|
|
46
|
+
| Role | Font | Size | Weight | Line Height | Letter Spacing | Notes |
|
|
47
|
+
|------|------|------|--------|-------------|----------------|-------|
|
|
48
|
+
| Display Hero | D-DIN-Bold | 48px (3.00rem) | 700 | 1.00 (tight) | 0.96px | `text-transform: uppercase` |
|
|
49
|
+
| Body | D-DIN | 16px (1.00rem) | 400 | 1.50–1.70 | normal | Standard reading text |
|
|
50
|
+
| Nav Link Bold | D-DIN | 13px (0.81rem) | 700 | 0.94 (tight) | 1.17px | `text-transform: uppercase` |
|
|
51
|
+
| Nav Link | D-DIN | 12px (0.75rem) | 400 | 2.00 (relaxed) | normal | `text-transform: uppercase` |
|
|
52
|
+
| Caption Bold | D-DIN | 13px (0.81rem) | 700 | 0.94 (tight) | 1.17px | `text-transform: uppercase` |
|
|
53
|
+
| Caption | D-DIN | 12px (0.75rem) | 400 | 1.00 (tight) | normal | `text-transform: uppercase` |
|
|
54
|
+
| Micro | D-DIN | 10px (0.63rem) | 400 | 0.94 (tight) | 1px | `text-transform: uppercase` |
|
|
55
|
+
|
|
56
|
+
### Principles
|
|
57
|
+
- **Universal uppercase**: Nearly every text element uses `text-transform: uppercase`. This creates a systematic military/aerospace voice where all communication feels like official documentation.
|
|
58
|
+
- **Positive letter-spacing as identity**: 0.96px on display, 1.17px on nav — the wide tracking creates the stenciled, industrial feel that connects to DIN's heritage as a German engineering standard.
|
|
59
|
+
- **Two weights, strict hierarchy**: D-DIN-Bold (700) for headlines and nav emphasis, D-DIN (400) for body. No medium or semibold weights exist in the system.
|
|
60
|
+
- **Tight line-heights**: 0.94–1.00 across most text — compressed, efficient, mission-critical communication.
|
|
61
|
+
|
|
62
|
+
## 4. Component Stylings
|
|
63
|
+
|
|
64
|
+
### Buttons
|
|
65
|
+
|
|
66
|
+
**Ghost Button**
|
|
67
|
+
- Background: `rgba(240, 240, 250, 0.1)` (barely visible)
|
|
68
|
+
- Text: Spectral White (`#f0f0fa`)
|
|
69
|
+
- Padding: 18px
|
|
70
|
+
- Radius: 32px
|
|
71
|
+
- Border: `1px solid rgba(240, 240, 250, 0.35)`
|
|
72
|
+
- Hover: background brightens, text to `var(--white-100)`
|
|
73
|
+
- Use: The only button variant — "LEARN MORE" CTAs on photography
|
|
74
|
+
|
|
75
|
+
### Cards & Containers
|
|
76
|
+
- **None.** SpaceX does not use cards, panels, or containers. All content is text directly on full-viewport photographs. The absence of containers IS the design.
|
|
77
|
+
|
|
78
|
+
### Inputs & Forms
|
|
79
|
+
- Not present on the homepage. The site is purely presentational.
|
|
80
|
+
|
|
81
|
+
### Navigation
|
|
82
|
+
- Transparent overlay nav on photography
|
|
83
|
+
- D-DIN 13px weight 700, uppercase, 1.17px tracking
|
|
84
|
+
- Spectral white text on dark imagery
|
|
85
|
+
- Logo: SpaceX wordmark at 147x19px
|
|
86
|
+
- Mobile: hamburger collapse
|
|
87
|
+
|
|
88
|
+
### Image Treatment
|
|
89
|
+
- Full-viewport (100vh) photography sections
|
|
90
|
+
- Professional aerospace photography: rockets, Mars, space
|
|
91
|
+
- Dark gradient overlays (`rgba(0,0,0,0.5)`) for text legibility
|
|
92
|
+
- Each section = one full-screen photograph with text overlay
|
|
93
|
+
- No border radius, no frames — edge-to-edge imagery
|
|
94
|
+
|
|
95
|
+
## 5. Layout Principles
|
|
96
|
+
|
|
97
|
+
### Spacing System
|
|
98
|
+
- Base unit: 8px
|
|
99
|
+
- Scale: 3px, 5px, 12px, 15px, 18px, 20px, 24px, 30px
|
|
100
|
+
- Minimal scale — spacing is not the organizing principle; photography is
|
|
101
|
+
|
|
102
|
+
### Grid & Container
|
|
103
|
+
- No traditional grid — each section is a full-viewport cinematic frame
|
|
104
|
+
- Text is positioned absolutely or with generous padding over imagery
|
|
105
|
+
- Left-aligned text blocks on photography backgrounds
|
|
106
|
+
- No max-width container — content bleeds to viewport edges
|
|
107
|
+
|
|
108
|
+
### Whitespace Philosophy
|
|
109
|
+
- **Photography IS the whitespace**: Empty space in the design is never empty — it's filled with the dark expanse of space, the curve of a planet, or the flame of a rocket engine. Traditional whitespace concepts don't apply.
|
|
110
|
+
- **Vertical pacing through viewport**: Each section is exactly one viewport tall, creating a rhythmic scroll where each "page" reveals a new scene.
|
|
111
|
+
|
|
112
|
+
### Border Radius Scale
|
|
113
|
+
- Sharp (4px): Small dividers, utility elements
|
|
114
|
+
- Button (32px): Ghost buttons — the only rounded element
|
|
115
|
+
|
|
116
|
+
## 6. Depth & Elevation
|
|
117
|
+
|
|
118
|
+
| Level | Treatment | Use |
|
|
119
|
+
|-------|-----------|-----|
|
|
120
|
+
| Photography (Level 0) | Full-viewport imagery | Background layer — always present |
|
|
121
|
+
| Overlay (Level 1) | `rgba(0, 0, 0, 0.5)` gradient | Text legibility layer over photography |
|
|
122
|
+
| Text (Level 2) | Spectral white text, no shadow | Content layer — text floats directly on image |
|
|
123
|
+
| Ghost (Level 3) | `rgba(240, 240, 250, 0.1)` surface | Barely-visible interactive layer |
|
|
124
|
+
|
|
125
|
+
**Shadow Philosophy**: SpaceX uses ZERO shadows. In a design built entirely on photography, shadows are meaningless — every surface is already a photograph with natural lighting. Depth comes from the photographic content itself: the receding curvature of Earth, the diminishing trail of a rocket, the atmospheric haze around Mars.
|
|
126
|
+
|
|
127
|
+
## 7. Do's and Don'ts
|
|
128
|
+
|
|
129
|
+
### Do
|
|
130
|
+
- Use full-viewport photography as the primary design element — every section is a scene
|
|
131
|
+
- Apply uppercase + positive letter-spacing to ALL text — the aerospace stencil voice
|
|
132
|
+
- Use D-DIN exclusively — no other fonts exist in the system
|
|
133
|
+
- Keep the color palette to black + spectral white (`#f0f0fa`) only
|
|
134
|
+
- Use ghost buttons (`rgba(240,240,250,0.1)`) as the sole interactive element
|
|
135
|
+
- Apply dark gradient overlays for text legibility on photographs
|
|
136
|
+
- Let photography carry the emotional weight — the type system is functional, not expressive
|
|
137
|
+
|
|
138
|
+
### Don't
|
|
139
|
+
- Don't add cards, panels, or containers — text sits directly on photography
|
|
140
|
+
- Don't use shadows — they have no meaning in a photographic context
|
|
141
|
+
- Don't introduce colors — the palette is strictly achromatic with spectral tint
|
|
142
|
+
- Don't use sentence case — everything is uppercase
|
|
143
|
+
- Don't use negative letter-spacing — all tracking is positive (0.96px–1.17px)
|
|
144
|
+
- Don't reduce photography to thumbnails — every image is full-viewport
|
|
145
|
+
- Don't add decorative elements (icons, badges, dividers) — the design is photography + type + one button
|
|
146
|
+
|
|
147
|
+
## 8. Responsive Behavior
|
|
148
|
+
|
|
149
|
+
### Breakpoints
|
|
150
|
+
| Name | Width | Key Changes |
|
|
151
|
+
|------|-------|-------------|
|
|
152
|
+
| Mobile | <600px | Stacked, reduced padding, smaller type |
|
|
153
|
+
| Tablet Small | 600–960px | Adjusted layout |
|
|
154
|
+
| Tablet | 960–1280px | Standard scaling |
|
|
155
|
+
| Desktop | 1280–1350px | Full layout |
|
|
156
|
+
| Large Desktop | 1350–1500px | Expanded |
|
|
157
|
+
| Ultra-wide | >1500px | Maximum viewport |
|
|
158
|
+
|
|
159
|
+
### Touch Targets
|
|
160
|
+
- Ghost buttons: 18px padding provides adequate touch area
|
|
161
|
+
- Navigation links: uppercase with generous letter-spacing aids readability
|
|
162
|
+
|
|
163
|
+
### Collapsing Strategy
|
|
164
|
+
- Photography: maintains full-viewport at all sizes, content reposition
|
|
165
|
+
- Hero text: 48px → scales down proportionally
|
|
166
|
+
- Navigation: horizontal → hamburger
|
|
167
|
+
- Text blocks: reposition but maintain overlay-on-photography pattern
|
|
168
|
+
- Full-viewport sections maintained on mobile
|
|
169
|
+
|
|
170
|
+
### Image Behavior
|
|
171
|
+
- Edge-to-edge photography at all viewport sizes
|
|
172
|
+
- Background-size: cover with center focus
|
|
173
|
+
- Dark overlay gradients adapt to content position
|
|
174
|
+
- No art direction changes — same photographs, responsive positioning
|
|
175
|
+
|
|
176
|
+
## 9. Agent Prompt Guide
|
|
177
|
+
|
|
178
|
+
### Quick Color Reference
|
|
179
|
+
- Background: Space Black (`#000000`)
|
|
180
|
+
- Text: Spectral White (`#f0f0fa`)
|
|
181
|
+
- Button background: Ghost (`rgba(240, 240, 250, 0.1)`)
|
|
182
|
+
- Button border: Ghost Border (`rgba(240, 240, 250, 0.35)`)
|
|
183
|
+
- Overlay: `rgba(0, 0, 0, 0.5)`
|
|
184
|
+
|
|
185
|
+
### Example Component Prompts
|
|
186
|
+
- "Create a full-viewport hero: background-image covering 100vh, dark gradient overlay rgba(0,0,0,0.5). Headline at 48px D-DIN-Bold, uppercase, letter-spacing 0.96px, spectral white (#f0f0fa) text. Ghost CTA button: rgba(240,240,250,0.1) bg, 1px solid rgba(240,240,250,0.35) border, 32px radius, 18px padding."
|
|
187
|
+
- "Design a navigation: transparent over photography. D-DIN 13px weight 700, uppercase, letter-spacing 1.17px, spectral white text. SpaceX wordmark left-aligned."
|
|
188
|
+
- "Build a content section: full-viewport height, background photography with dark overlay. Left-aligned text block with 48px D-DIN-Bold uppercase heading, 16px D-DIN body text, and ghost button below."
|
|
189
|
+
- "Create a micro label: D-DIN 10px, uppercase, letter-spacing 1px, spectral white, line-height 0.94."
|
|
190
|
+
|
|
191
|
+
### Iteration Guide
|
|
192
|
+
1. Start with photography — the image IS the design
|
|
193
|
+
2. All text is uppercase with positive letter-spacing — no exceptions
|
|
194
|
+
3. Only two colors: black and spectral white (#f0f0fa)
|
|
195
|
+
4. Ghost buttons are the only interactive element — transparent, spectral-bordered
|
|
196
|
+
5. Zero shadows, zero cards, zero decorative elements
|
|
197
|
+
6. Every section is full-viewport (100vh) — cinematic pacing
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
# Design System Inspired by Spacious
|
|
2
|
+
|
|
3
|
+
> Category: Layout & Structure
|
|
4
|
+
> Generous whitespace, consistent padding, and grid-based layouts for clean, readable, and breathing interfaces.
|
|
5
|
+
|
|
6
|
+
## 1. Visual Theme & Atmosphere
|
|
7
|
+
|
|
8
|
+
Generous whitespace, consistent padding, and grid-based layouts for clean, readable, and breathing interfaces.
|
|
9
|
+
|
|
10
|
+
- **Visual style:** minimal, clean
|
|
11
|
+
- **Color stance:** primary, neutral, success, warning, danger
|
|
12
|
+
- **Design intent:** Keep outputs recognizable to this style family while preserving usability and readability.
|
|
13
|
+
|
|
14
|
+
## 2. Color
|
|
15
|
+
|
|
16
|
+
- **Primary:** `#3B82F6` — Token from style foundations.
|
|
17
|
+
- **Secondary:** `#8B5CF6` — Token from style foundations.
|
|
18
|
+
- **Success:** `#16A34A` — Token from style foundations.
|
|
19
|
+
- **Warning:** `#D97706` — Token from style foundations.
|
|
20
|
+
- **Danger:** `#DC2626` — Token from style foundations.
|
|
21
|
+
- **Surface:** `#FFFFFF` — Token from style foundations.
|
|
22
|
+
- **Text:** `#111827` — Token from style foundations.
|
|
23
|
+
- **Neutral:** `#FFFFFF` — Derived from the surface token for official format compatibility.
|
|
24
|
+
|
|
25
|
+
- Favor Primary (#3B82F6) for CTA emphasis.
|
|
26
|
+
- Use Surface (#FFFFFF) for large backgrounds and cards.
|
|
27
|
+
- Keep body copy on Text (#111827) for legibility.
|
|
28
|
+
|
|
29
|
+
## 3. Typography
|
|
30
|
+
|
|
31
|
+
- **Scale:** 12/14/16/18/24/30/36
|
|
32
|
+
- **Families:** primary=Open Sans, display=Montserrat, mono=IBM Plex Mono
|
|
33
|
+
- **Weights:** 100, 200, 300, 400, 500, 600, 700, 800, 900
|
|
34
|
+
- Headings should carry the style personality; body text should optimize scanability and contrast.
|
|
35
|
+
|
|
36
|
+
## 4. Spacing & Grid
|
|
37
|
+
|
|
38
|
+
- **Spacing scale:** 8pt baseline grid
|
|
39
|
+
- Keep vertical rhythm consistent across sections and components.
|
|
40
|
+
- Align columns and modules to a predictable grid; avoid ad-hoc offsets.
|
|
41
|
+
|
|
42
|
+
## 5. Layout & Composition
|
|
43
|
+
|
|
44
|
+
- Prefer clear content blocks with consistent internal padding.
|
|
45
|
+
- Keep hierarchy obvious: headline → support text → primary action.
|
|
46
|
+
- Use whitespace to separate concerns before adding borders or shadows.
|
|
47
|
+
|
|
48
|
+
## 6. Components
|
|
49
|
+
|
|
50
|
+
- Buttons: primary action uses `#3B82F6`; secondary actions stay neutral.
|
|
51
|
+
- Inputs: strong focus-visible states, clear labels, and predictable error messaging.
|
|
52
|
+
- Cards/sections: use consistent radii, spacing, and elevation strategy across the page.
|
|
53
|
+
|
|
54
|
+
## 7. Motion & Interaction
|
|
55
|
+
|
|
56
|
+
- Use subtle transitions that emphasize Primary (#3B82F6) as the interaction signal.
|
|
57
|
+
- Default to short, purposeful transitions (150–250ms) with stable easing.
|
|
58
|
+
- Ensure hover, focus-visible, active, disabled, and loading states are explicit.
|
|
59
|
+
|
|
60
|
+
## 8. Voice & Brand
|
|
61
|
+
|
|
62
|
+
- Tone should reflect the visual style: concise, confident, and product-specific.
|
|
63
|
+
- Keep microcopy action-oriented and avoid generic filler language.
|
|
64
|
+
- Preserve the style identity in headlines while keeping UI labels literal and clear.
|
|
65
|
+
|
|
66
|
+
## 9. Anti-patterns
|
|
67
|
+
|
|
68
|
+
- Do not introduce off-palette colors when an existing token can solve the problem.
|
|
69
|
+
- Do not flatten hierarchy by using the same type size/weight for all text.
|
|
70
|
+
- Do not add decorative effects that reduce readability or accessibility.
|
|
71
|
+
- Do not mix unrelated visual metaphors in the same interface.
|
|
@@ -0,0 +1,249 @@
|
|
|
1
|
+
# Design System Inspired by Spotify
|
|
2
|
+
|
|
3
|
+
> Category: Media & Consumer
|
|
4
|
+
> Music streaming. Vibrant green on dark, bold type, album-art-driven.
|
|
5
|
+
|
|
6
|
+
## 1. Visual Theme & Atmosphere
|
|
7
|
+
|
|
8
|
+
Spotify's web interface is a dark, immersive music player that wraps listeners in a near-black cocoon (`#121212`, `#181818`, `#1f1f1f`) where album art and content become the primary source of color. The design philosophy is "content-first darkness" — the UI recedes into shadow so that music, podcasts, and playlists can glow. Every surface is a shade of charcoal, creating a theater-like environment where the only true color comes from the iconic Spotify Green (`#1ed760`) and the album artwork itself.
|
|
9
|
+
|
|
10
|
+
The typography uses SpotifyMixUI and SpotifyMixUITitle — proprietary fonts from the CircularSp family (Circular by Lineto, customized for Spotify) with an extensive fallback stack that includes Arabic, Hebrew, Cyrillic, Greek, Devanagari, and CJK fonts, reflecting Spotify's global reach. The type system is compact and functional: 700 (bold) for emphasis and navigation, 600 (semibold) for secondary emphasis, and 400 (regular) for body. Buttons use uppercase with positive letter-spacing (1.4px–2px) for a systematic, label-like quality.
|
|
11
|
+
|
|
12
|
+
What distinguishes Spotify is its pill-and-circle geometry. Primary buttons use 500px–9999px radius (full pill), circular play buttons use 50% radius, and search inputs are 500px pills. Combined with heavy shadows (`rgba(0,0,0,0.5) 0px 8px 24px`) on elevated elements and a unique inset border-shadow combo (`rgb(18,18,18) 0px 1px 0px, rgb(124,124,124) 0px 0px 0px 1px inset`), the result is an interface that feels like a premium audio device — tactile, rounded, and built for touch.
|
|
13
|
+
|
|
14
|
+
**Key Characteristics:**
|
|
15
|
+
- Near-black immersive dark theme (`#121212`–`#1f1f1f`) — UI disappears behind content
|
|
16
|
+
- Spotify Green (`#1ed760`) as singular brand accent — never decorative, always functional
|
|
17
|
+
- SpotifyMixUI/CircularSp font family with global script support
|
|
18
|
+
- Pill buttons (500px–9999px) and circular controls (50%) — rounded, touch-optimized
|
|
19
|
+
- Uppercase button labels with wide letter-spacing (1.4px–2px)
|
|
20
|
+
- Heavy shadows on elevated elements (`rgba(0,0,0,0.5) 0px 8px 24px`)
|
|
21
|
+
- Semantic colors: negative red (`#f3727f`), warning orange (`#ffa42b`), announcement blue (`#539df5`)
|
|
22
|
+
- Album art as the primary color source — the UI is achromatic by design
|
|
23
|
+
|
|
24
|
+
## 2. Color Palette & Roles
|
|
25
|
+
|
|
26
|
+
### Primary Brand
|
|
27
|
+
- **Spotify Green** (`#1ed760`): Primary brand accent — play buttons, active states, CTAs
|
|
28
|
+
- **Near Black** (`#121212`): Deepest background surface
|
|
29
|
+
- **Dark Surface** (`#181818`): Cards, containers, elevated surfaces
|
|
30
|
+
- **Mid Dark** (`#1f1f1f`): Button backgrounds, interactive surfaces
|
|
31
|
+
|
|
32
|
+
### Text
|
|
33
|
+
- **White** (`#ffffff`): `--text-base`, primary text
|
|
34
|
+
- **Silver** (`#b3b3b3`): Secondary text, muted labels, inactive nav
|
|
35
|
+
- **Near White** (`#cbcbcb`): Slightly brighter secondary text
|
|
36
|
+
- **Light** (`#fdfdfd`): Near-pure white for maximum emphasis
|
|
37
|
+
|
|
38
|
+
### Semantic
|
|
39
|
+
- **Negative Red** (`#f3727f`): `--text-negative`, error states
|
|
40
|
+
- **Warning Orange** (`#ffa42b`): `--text-warning`, warning states
|
|
41
|
+
- **Announcement Blue** (`#539df5`): `--text-announcement`, info states
|
|
42
|
+
|
|
43
|
+
### Surface & Border
|
|
44
|
+
- **Dark Card** (`#252525`): Elevated card surface
|
|
45
|
+
- **Mid Card** (`#272727`): Alternate card surface
|
|
46
|
+
- **Border Gray** (`#4d4d4d`): Button borders on dark
|
|
47
|
+
- **Light Border** (`#7c7c7c`): Outlined button borders, muted links
|
|
48
|
+
- **Separator** (`#b3b3b3`): Divider lines
|
|
49
|
+
- **Light Surface** (`#eeeeee`): Light-mode buttons (rare)
|
|
50
|
+
- **Spotify Green Border** (`#1db954`): Green accent border variant
|
|
51
|
+
|
|
52
|
+
### Shadows
|
|
53
|
+
- **Heavy** (`rgba(0,0,0,0.5) 0px 8px 24px`): Dialogs, menus, elevated panels
|
|
54
|
+
- **Medium** (`rgba(0,0,0,0.3) 0px 8px 8px`): Cards, dropdowns
|
|
55
|
+
- **Inset Border** (`rgb(18,18,18) 0px 1px 0px, rgb(124,124,124) 0px 0px 0px 1px inset`): Input border-shadow combo
|
|
56
|
+
|
|
57
|
+
## 3. Typography Rules
|
|
58
|
+
|
|
59
|
+
### Font Families
|
|
60
|
+
- **Title**: `SpotifyMixUITitle`, fallbacks: `CircularSp-Arab, CircularSp-Hebr, CircularSp-Cyrl, CircularSp-Grek, CircularSp-Deva, Helvetica Neue, helvetica, arial, Hiragino Sans, Hiragino Kaku Gothic ProN, Meiryo, MS Gothic`
|
|
61
|
+
- **UI / Body**: `SpotifyMixUI`, same fallback stack
|
|
62
|
+
|
|
63
|
+
### Hierarchy
|
|
64
|
+
|
|
65
|
+
| Role | Font | Size | Weight | Line Height | Letter Spacing | Notes |
|
|
66
|
+
|------|------|------|--------|-------------|----------------|-------|
|
|
67
|
+
| Section Title | SpotifyMixUITitle | 24px (1.50rem) | 700 | normal | normal | Bold title weight |
|
|
68
|
+
| Feature Heading | SpotifyMixUI | 18px (1.13rem) | 600 | 1.30 (tight) | normal | Semibold section heads |
|
|
69
|
+
| Body Bold | SpotifyMixUI | 16px (1.00rem) | 700 | normal | normal | Emphasized text |
|
|
70
|
+
| Body | SpotifyMixUI | 16px (1.00rem) | 400 | normal | normal | Standard body |
|
|
71
|
+
| Button Uppercase | SpotifyMixUI | 14px (0.88rem) | 600–700 | 1.00 (tight) | 1.4px–2px | `text-transform: uppercase` |
|
|
72
|
+
| Button | SpotifyMixUI | 14px (0.88rem) | 700 | normal | 0.14px | Standard button |
|
|
73
|
+
| Nav Link Bold | SpotifyMixUI | 14px (0.88rem) | 700 | normal | normal | Navigation |
|
|
74
|
+
| Nav Link | SpotifyMixUI | 14px (0.88rem) | 400 | normal | normal | Inactive nav |
|
|
75
|
+
| Caption Bold | SpotifyMixUI | 14px (0.88rem) | 700 | 1.50–1.54 | normal | Bold metadata |
|
|
76
|
+
| Caption | SpotifyMixUI | 14px (0.88rem) | 400 | normal | normal | Metadata |
|
|
77
|
+
| Small Bold | SpotifyMixUI | 12px (0.75rem) | 700 | 1.50 | normal | Tags, counts |
|
|
78
|
+
| Small | SpotifyMixUI | 12px (0.75rem) | 400 | normal | normal | Fine print |
|
|
79
|
+
| Badge | SpotifyMixUI | 10.5px (0.66rem) | 600 | 1.33 | normal | `text-transform: capitalize` |
|
|
80
|
+
| Micro | SpotifyMixUI | 10px (0.63rem) | 400 | normal | normal | Smallest text |
|
|
81
|
+
|
|
82
|
+
### Principles
|
|
83
|
+
- **Bold/regular binary**: Most text is either 700 (bold) or 400 (regular), with 600 used sparingly. This creates a clear visual hierarchy through weight contrast rather than size variation.
|
|
84
|
+
- **Uppercase buttons as system**: Button labels use uppercase + wide letter-spacing (1.4px–2px), creating a systematic "label" voice distinct from content text.
|
|
85
|
+
- **Compact sizing**: The range is 10px–24px — narrower than most systems. Spotify's type is compact and functional, designed for scanning playlists, not reading articles.
|
|
86
|
+
- **Global script support**: The extensive fallback stack (Arabic, Hebrew, Cyrillic, Greek, Devanagari, CJK) reflects Spotify's 180+ market reach.
|
|
87
|
+
|
|
88
|
+
## 4. Component Stylings
|
|
89
|
+
|
|
90
|
+
### Buttons
|
|
91
|
+
|
|
92
|
+
**Dark Pill**
|
|
93
|
+
- Background: `#1f1f1f`
|
|
94
|
+
- Text: `#ffffff` or `#b3b3b3`
|
|
95
|
+
- Padding: 8px 16px
|
|
96
|
+
- Radius: 9999px (full pill)
|
|
97
|
+
- Use: Navigation pills, secondary actions
|
|
98
|
+
|
|
99
|
+
**Dark Large Pill**
|
|
100
|
+
- Background: `#181818`
|
|
101
|
+
- Text: `#ffffff`
|
|
102
|
+
- Padding: 0px 43px
|
|
103
|
+
- Radius: 500px
|
|
104
|
+
- Use: Primary app navigation buttons
|
|
105
|
+
|
|
106
|
+
**Light Pill**
|
|
107
|
+
- Background: `#eeeeee`
|
|
108
|
+
- Text: `#181818`
|
|
109
|
+
- Radius: 500px
|
|
110
|
+
- Use: Light-mode CTAs (cookie consent, marketing)
|
|
111
|
+
|
|
112
|
+
**Outlined Pill**
|
|
113
|
+
- Background: transparent
|
|
114
|
+
- Text: `#ffffff`
|
|
115
|
+
- Border: `1px solid #7c7c7c`
|
|
116
|
+
- Padding: 4px 16px 4px 36px (asymmetric for icon)
|
|
117
|
+
- Radius: 9999px
|
|
118
|
+
- Use: Follow buttons, secondary actions
|
|
119
|
+
|
|
120
|
+
**Circular Play**
|
|
121
|
+
- Background: `#1f1f1f`
|
|
122
|
+
- Text: `#ffffff`
|
|
123
|
+
- Padding: 12px
|
|
124
|
+
- Radius: 50% (circle)
|
|
125
|
+
- Use: Play/pause controls
|
|
126
|
+
|
|
127
|
+
### Cards & Containers
|
|
128
|
+
- Background: `#181818` or `#1f1f1f`
|
|
129
|
+
- Radius: 6px–8px
|
|
130
|
+
- No visible borders on most cards
|
|
131
|
+
- Hover: slight background lightening
|
|
132
|
+
- Shadow: `rgba(0,0,0,0.3) 0px 8px 8px` on elevated
|
|
133
|
+
|
|
134
|
+
### Inputs
|
|
135
|
+
- Search input: `#1f1f1f` background, `#ffffff` text
|
|
136
|
+
- Radius: 500px (pill)
|
|
137
|
+
- Padding: 12px 96px 12px 48px (icon-aware)
|
|
138
|
+
- Focus: border becomes `#000000`, outline `1px solid`
|
|
139
|
+
|
|
140
|
+
### Navigation
|
|
141
|
+
- Dark sidebar with SpotifyMixUI 14px weight 700 for active, 400 for inactive
|
|
142
|
+
- `#b3b3b3` muted color for inactive items, `#ffffff` for active
|
|
143
|
+
- Circular icon buttons (50% radius)
|
|
144
|
+
- Spotify logo top-left in green
|
|
145
|
+
|
|
146
|
+
## 5. Layout Principles
|
|
147
|
+
|
|
148
|
+
### Spacing System
|
|
149
|
+
- Base unit: 8px
|
|
150
|
+
- Scale: 1px, 2px, 3px, 4px, 5px, 6px, 8px, 10px, 12px, 14px, 15px, 16px, 20px
|
|
151
|
+
|
|
152
|
+
### Grid & Container
|
|
153
|
+
- Sidebar (fixed) + main content area
|
|
154
|
+
- Grid-based album/playlist cards
|
|
155
|
+
- Full-width now-playing bar at bottom
|
|
156
|
+
- Responsive content area fills remaining space
|
|
157
|
+
|
|
158
|
+
### Whitespace Philosophy
|
|
159
|
+
- **Dark compression**: Spotify packs content densely — playlist grids, track lists, and navigation are all tightly spaced. The dark background provides visual rest between elements without needing large gaps.
|
|
160
|
+
- **Content density over breathing room**: This is an app, not a marketing site. Every pixel serves the listening experience.
|
|
161
|
+
|
|
162
|
+
### Border Radius Scale
|
|
163
|
+
- Minimal (2px): Badges, explicit tags
|
|
164
|
+
- Subtle (4px): Inputs, small elements
|
|
165
|
+
- Standard (6px): Album art containers, cards
|
|
166
|
+
- Comfortable (8px): Sections, dialogs
|
|
167
|
+
- Medium (10px–20px): Panels, overlay elements
|
|
168
|
+
- Large (100px): Large pill buttons
|
|
169
|
+
- Pill (500px): Primary buttons, search input
|
|
170
|
+
- Full Pill (9999px): Navigation pills, search
|
|
171
|
+
- Circle (50%): Play buttons, avatars, icons
|
|
172
|
+
|
|
173
|
+
## 6. Depth & Elevation
|
|
174
|
+
|
|
175
|
+
| Level | Treatment | Use |
|
|
176
|
+
|-------|-----------|-----|
|
|
177
|
+
| Base (Level 0) | `#121212` background | Deepest layer, page background |
|
|
178
|
+
| Surface (Level 1) | `#181818` or `#1f1f1f` | Cards, sidebar, containers |
|
|
179
|
+
| Elevated (Level 2) | `rgba(0,0,0,0.3) 0px 8px 8px` | Dropdown menus, hover cards |
|
|
180
|
+
| Dialog (Level 3) | `rgba(0,0,0,0.5) 0px 8px 24px` | Modals, overlays, menus |
|
|
181
|
+
| Inset (Border) | `rgb(18,18,18) 0px 1px 0px, rgb(124,124,124) 0px 0px 0px 1px inset` | Input borders |
|
|
182
|
+
|
|
183
|
+
**Shadow Philosophy**: Spotify uses notably heavy shadows for a dark-themed app. The 0.5 opacity shadow at 24px blur creates a dramatic "floating in darkness" effect for dialogs and menus, while the 0.3 opacity at 8px blur provides a more subtle card lift. The unique inset border-shadow combination on inputs creates a recessed, tactile quality.
|
|
184
|
+
|
|
185
|
+
## 7. Do's and Don'ts
|
|
186
|
+
|
|
187
|
+
### Do
|
|
188
|
+
- Use near-black backgrounds (`#121212`–`#1f1f1f`) — depth through shade variation
|
|
189
|
+
- Apply Spotify Green (`#1ed760`) only for play controls, active states, and primary CTAs
|
|
190
|
+
- Use pill shape (500px–9999px) for all buttons — circular (50%) for play controls
|
|
191
|
+
- Apply uppercase + wide letter-spacing (1.4px–2px) on button labels
|
|
192
|
+
- Keep typography compact (10px–24px range) — this is an app, not a magazine
|
|
193
|
+
- Use heavy shadows (`0.3–0.5 opacity`) for elevated elements on dark backgrounds
|
|
194
|
+
- Let album art provide color — the UI itself is achromatic
|
|
195
|
+
|
|
196
|
+
### Don't
|
|
197
|
+
- Don't use Spotify Green decoratively or on backgrounds — it's functional only
|
|
198
|
+
- Don't use light backgrounds for primary surfaces — the dark immersion is core
|
|
199
|
+
- Don't skip the pill/circle geometry on buttons — square buttons break the identity
|
|
200
|
+
- Don't use thin/subtle shadows — on dark backgrounds, shadows need to be heavy to be visible
|
|
201
|
+
- Don't add additional brand colors — green + achromatic grays is the complete palette
|
|
202
|
+
- Don't use relaxed line-heights — Spotify's typography is compact and dense
|
|
203
|
+
- Don't expose raw gray borders — use shadow-based or inset borders instead
|
|
204
|
+
|
|
205
|
+
## 8. Responsive Behavior
|
|
206
|
+
|
|
207
|
+
### Breakpoints
|
|
208
|
+
| Name | Width | Key Changes |
|
|
209
|
+
|------|-------|-------------|
|
|
210
|
+
| Mobile Small | <425px | Compact mobile layout |
|
|
211
|
+
| Mobile | 425–576px | Standard mobile |
|
|
212
|
+
| Tablet | 576–768px | 2-column grid |
|
|
213
|
+
| Tablet Large | 768–896px | Expanded layout |
|
|
214
|
+
| Desktop Small | 896–1024px | Sidebar visible |
|
|
215
|
+
| Desktop | 1024–1280px | Full desktop layout |
|
|
216
|
+
| Large Desktop | >1280px | Expanded grid |
|
|
217
|
+
|
|
218
|
+
### Collapsing Strategy
|
|
219
|
+
- Sidebar: full → collapsed → hidden
|
|
220
|
+
- Album grid: 5 columns → 3 → 2 → 1
|
|
221
|
+
- Now-playing bar: maintained at all sizes
|
|
222
|
+
- Search: pill input maintained, width adjusts
|
|
223
|
+
- Navigation: sidebar → bottom bar on mobile
|
|
224
|
+
|
|
225
|
+
## 9. Agent Prompt Guide
|
|
226
|
+
|
|
227
|
+
### Quick Color Reference
|
|
228
|
+
- Background: Near Black (`#121212`)
|
|
229
|
+
- Surface: Dark Card (`#181818`)
|
|
230
|
+
- Text: White (`#ffffff`)
|
|
231
|
+
- Secondary text: Silver (`#b3b3b3`)
|
|
232
|
+
- Accent: Spotify Green (`#1ed760`)
|
|
233
|
+
- Border: `#4d4d4d`
|
|
234
|
+
- Error: Negative Red (`#f3727f`)
|
|
235
|
+
|
|
236
|
+
### Example Component Prompts
|
|
237
|
+
- "Create a dark card: #181818 background, 8px radius. Title at 16px SpotifyMixUI weight 700, white text. Subtitle at 14px weight 400, #b3b3b3. Shadow rgba(0,0,0,0.3) 0px 8px 8px on hover."
|
|
238
|
+
- "Design a pill button: #1f1f1f background, white text, 9999px radius, 8px 16px padding. 14px SpotifyMixUI weight 700, uppercase, letter-spacing 1.4px."
|
|
239
|
+
- "Build a circular play button: Spotify Green (#1ed760) background, #000000 icon, 50% radius, 12px padding."
|
|
240
|
+
- "Create search input: #1f1f1f background, white text, 500px radius, 12px 48px padding. Inset border: rgb(124,124,124) 0px 0px 0px 1px inset."
|
|
241
|
+
- "Design navigation sidebar: #121212 background. Active items: 14px weight 700, white. Inactive: 14px weight 400, #b3b3b3."
|
|
242
|
+
|
|
243
|
+
### Iteration Guide
|
|
244
|
+
1. Start with #121212 — everything lives in near-black darkness
|
|
245
|
+
2. Spotify Green for functional highlights only (play, active, CTA)
|
|
246
|
+
3. Pill everything — 500px for large, 9999px for small, 50% for circular
|
|
247
|
+
4. Uppercase + wide tracking on buttons — the systematic label voice
|
|
248
|
+
5. Heavy shadows (0.3–0.5 opacity) for elevation — light shadows are invisible on dark
|
|
249
|
+
6. Album art provides all the color — the UI stays achromatic
|