@aexol/spectral 0.7.0 → 0.7.1
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/dist/agent/index.js +76 -301
- package/dist/cli.js +11 -0
- package/dist/designer/data/systems/agentic/DESIGN.md +71 -0
- package/dist/designer/data/systems/agentic/components.html +154 -0
- package/dist/designer/data/systems/agentic/tokens.css +63 -0
- package/dist/designer/data/systems/airbnb/DESIGN.md +393 -0
- package/dist/designer/data/systems/airbnb/components.html +1373 -0
- package/dist/designer/data/systems/airbnb/tokens.css +261 -0
- package/dist/designer/data/systems/airtable/DESIGN.md +92 -0
- package/dist/designer/data/systems/airtable/components.html +489 -0
- package/dist/designer/data/systems/airtable/tokens.css +261 -0
- package/dist/designer/data/systems/ant/DESIGN.md +71 -0
- package/dist/designer/data/systems/ant/components.html +154 -0
- package/dist/designer/data/systems/ant/tokens.css +63 -0
- package/dist/designer/data/systems/apple/DESIGN.md +250 -0
- package/dist/designer/data/systems/apple/components.html +749 -0
- package/dist/designer/data/systems/apple/tokens.css +286 -0
- package/dist/designer/data/systems/application/DESIGN.md +71 -0
- package/dist/designer/data/systems/application/components.html +154 -0
- package/dist/designer/data/systems/application/tokens.css +63 -0
- package/dist/designer/data/systems/arc/DESIGN.md +152 -0
- package/dist/designer/data/systems/arc/components.html +432 -0
- package/dist/designer/data/systems/arc/tokens.css +137 -0
- package/dist/designer/data/systems/artistic/DESIGN.md +71 -0
- package/dist/designer/data/systems/artistic/components.html +136 -0
- package/dist/designer/data/systems/artistic/tokens.css +63 -0
- package/dist/designer/data/systems/atelier-zero/DESIGN.md +316 -0
- package/dist/designer/data/systems/atelier-zero/components.html +136 -0
- package/dist/designer/data/systems/atelier-zero/tokens.css +63 -0
- package/dist/designer/data/systems/bento/DESIGN.md +71 -0
- package/dist/designer/data/systems/bento/components.html +136 -0
- package/dist/designer/data/systems/bento/tokens.css +63 -0
- package/dist/designer/data/systems/binance/DESIGN.md +348 -0
- package/dist/designer/data/systems/binance/components.html +550 -0
- package/dist/designer/data/systems/binance/tokens.css +255 -0
- package/dist/designer/data/systems/bmw/DESIGN.md +183 -0
- package/dist/designer/data/systems/bmw/components.html +551 -0
- package/dist/designer/data/systems/bmw/tokens.css +179 -0
- package/dist/designer/data/systems/bmw-m/DESIGN.md +246 -0
- package/dist/designer/data/systems/bmw-m/components.html +342 -0
- package/dist/designer/data/systems/bmw-m/tokens.css +64 -0
- package/dist/designer/data/systems/bold/DESIGN.md +71 -0
- package/dist/designer/data/systems/bold/components.html +136 -0
- package/dist/designer/data/systems/bold/tokens.css +63 -0
- package/dist/designer/data/systems/brutalism/DESIGN.md +71 -0
- package/dist/designer/data/systems/brutalism/components.html +154 -0
- package/dist/designer/data/systems/brutalism/tokens.css +63 -0
- package/dist/designer/data/systems/bugatti/DESIGN.md +271 -0
- package/dist/designer/data/systems/bugatti/components.html +342 -0
- package/dist/designer/data/systems/bugatti/tokens.css +64 -0
- package/dist/designer/data/systems/cafe/DESIGN.md +71 -0
- package/dist/designer/data/systems/cafe/components.html +136 -0
- package/dist/designer/data/systems/cafe/tokens.css +63 -0
- package/dist/designer/data/systems/cal/DESIGN.md +262 -0
- package/dist/designer/data/systems/cal/components.html +376 -0
- package/dist/designer/data/systems/cal/tokens.css +265 -0
- package/dist/designer/data/systems/canva/DESIGN.md +157 -0
- package/dist/designer/data/systems/canva/components.html +461 -0
- package/dist/designer/data/systems/canva/tokens.css +147 -0
- package/dist/designer/data/systems/cisco/DESIGN.md +201 -0
- package/dist/designer/data/systems/cisco/components.html +342 -0
- package/dist/designer/data/systems/cisco/tokens.css +64 -0
- package/dist/designer/data/systems/claude/DESIGN.md +315 -0
- package/dist/designer/data/systems/claude/components.html +483 -0
- package/dist/designer/data/systems/claude/tokens.css +130 -0
- package/dist/designer/data/systems/clay/DESIGN.md +307 -0
- package/dist/designer/data/systems/clay/components.html +136 -0
- package/dist/designer/data/systems/clay/tokens.css +63 -0
- package/dist/designer/data/systems/claymorphism/DESIGN.md +71 -0
- package/dist/designer/data/systems/claymorphism/components.html +136 -0
- package/dist/designer/data/systems/claymorphism/tokens.css +63 -0
- package/dist/designer/data/systems/clean/DESIGN.md +71 -0
- package/dist/designer/data/systems/clean/components.html +136 -0
- package/dist/designer/data/systems/clean/tokens.css +63 -0
- package/dist/designer/data/systems/clickhouse/DESIGN.md +284 -0
- package/dist/designer/data/systems/clickhouse/components.html +506 -0
- package/dist/designer/data/systems/clickhouse/tokens.css +135 -0
- package/dist/designer/data/systems/cohere/DESIGN.md +269 -0
- package/dist/designer/data/systems/cohere/components.html +353 -0
- package/dist/designer/data/systems/cohere/tokens.css +126 -0
- package/dist/designer/data/systems/coinbase/DESIGN.md +132 -0
- package/dist/designer/data/systems/coinbase/components.html +501 -0
- package/dist/designer/data/systems/coinbase/tokens.css +257 -0
- package/dist/designer/data/systems/colorful/DESIGN.md +71 -0
- package/dist/designer/data/systems/colorful/components.html +136 -0
- package/dist/designer/data/systems/colorful/tokens.css +63 -0
- package/dist/designer/data/systems/composio/DESIGN.md +310 -0
- package/dist/designer/data/systems/composio/components.html +342 -0
- package/dist/designer/data/systems/composio/tokens.css +64 -0
- package/dist/designer/data/systems/contemporary/DESIGN.md +71 -0
- package/dist/designer/data/systems/contemporary/components.html +136 -0
- package/dist/designer/data/systems/contemporary/tokens.css +63 -0
- package/dist/designer/data/systems/corporate/DESIGN.md +71 -0
- package/dist/designer/data/systems/corporate/components.html +136 -0
- package/dist/designer/data/systems/corporate/tokens.css +63 -0
- package/dist/designer/data/systems/cosmic/DESIGN.md +71 -0
- package/dist/designer/data/systems/cosmic/components.html +136 -0
- package/dist/designer/data/systems/cosmic/tokens.css +63 -0
- package/dist/designer/data/systems/creative/DESIGN.md +71 -0
- package/dist/designer/data/systems/creative/components.html +136 -0
- package/dist/designer/data/systems/creative/tokens.css +63 -0
- package/dist/designer/data/systems/cursor/DESIGN.md +312 -0
- package/dist/designer/data/systems/cursor/components.html +654 -0
- package/dist/designer/data/systems/cursor/tokens.css +218 -0
- package/dist/designer/data/systems/dashboard/DESIGN.md +71 -0
- package/dist/designer/data/systems/dashboard/components.html +154 -0
- package/dist/designer/data/systems/dashboard/tokens.css +63 -0
- package/dist/designer/data/systems/default/DESIGN.md +62 -0
- package/dist/designer/data/systems/default/components.html +523 -0
- package/dist/designer/data/systems/default/tokens.css +200 -0
- package/dist/designer/data/systems/discord/DESIGN.md +162 -0
- package/dist/designer/data/systems/discord/components.html +359 -0
- package/dist/designer/data/systems/discord/tokens.css +125 -0
- package/dist/designer/data/systems/dithered/DESIGN.md +71 -0
- package/dist/designer/data/systems/dithered/components.html +136 -0
- package/dist/designer/data/systems/dithered/tokens.css +63 -0
- package/dist/designer/data/systems/doodle/DESIGN.md +71 -0
- package/dist/designer/data/systems/doodle/components.html +136 -0
- package/dist/designer/data/systems/doodle/tokens.css +63 -0
- package/dist/designer/data/systems/dramatic/DESIGN.md +71 -0
- package/dist/designer/data/systems/dramatic/components.html +136 -0
- package/dist/designer/data/systems/dramatic/tokens.css +63 -0
- package/dist/designer/data/systems/duolingo/DESIGN.md +154 -0
- package/dist/designer/data/systems/duolingo/components.html +532 -0
- package/dist/designer/data/systems/duolingo/tokens.css +130 -0
- package/dist/designer/data/systems/editorial/DESIGN.md +71 -0
- package/dist/designer/data/systems/editorial/components.html +154 -0
- package/dist/designer/data/systems/editorial/tokens.css +63 -0
- package/dist/designer/data/systems/elegant/DESIGN.md +71 -0
- package/dist/designer/data/systems/elegant/components.html +136 -0
- package/dist/designer/data/systems/elegant/tokens.css +63 -0
- package/dist/designer/data/systems/elevenlabs/DESIGN.md +268 -0
- package/dist/designer/data/systems/elevenlabs/components.html +342 -0
- package/dist/designer/data/systems/elevenlabs/tokens.css +127 -0
- package/dist/designer/data/systems/energetic/DESIGN.md +72 -0
- package/dist/designer/data/systems/energetic/components.html +136 -0
- package/dist/designer/data/systems/energetic/tokens.css +63 -0
- package/dist/designer/data/systems/enterprise/DESIGN.md +71 -0
- package/dist/designer/data/systems/enterprise/components.html +154 -0
- package/dist/designer/data/systems/enterprise/tokens.css +63 -0
- package/dist/designer/data/systems/expo/DESIGN.md +284 -0
- package/dist/designer/data/systems/expo/components.html +342 -0
- package/dist/designer/data/systems/expo/tokens.css +64 -0
- package/dist/designer/data/systems/expressive/DESIGN.md +71 -0
- package/dist/designer/data/systems/expressive/components.html +136 -0
- package/dist/designer/data/systems/expressive/tokens.css +63 -0
- package/dist/designer/data/systems/fantasy/DESIGN.md +71 -0
- package/dist/designer/data/systems/fantasy/components.html +136 -0
- package/dist/designer/data/systems/fantasy/tokens.css +63 -0
- package/dist/designer/data/systems/ferrari/DESIGN.md +317 -0
- package/dist/designer/data/systems/ferrari/components.html +342 -0
- package/dist/designer/data/systems/ferrari/tokens.css +64 -0
- package/dist/designer/data/systems/figma/DESIGN.md +223 -0
- package/dist/designer/data/systems/figma/components.html +344 -0
- package/dist/designer/data/systems/figma/tokens.css +126 -0
- package/dist/designer/data/systems/flat/DESIGN.md +71 -0
- package/dist/designer/data/systems/flat/components.html +136 -0
- package/dist/designer/data/systems/flat/tokens.css +63 -0
- package/dist/designer/data/systems/framer/DESIGN.md +249 -0
- package/dist/designer/data/systems/framer/components.html +438 -0
- package/dist/designer/data/systems/framer/tokens.css +238 -0
- package/dist/designer/data/systems/friendly/DESIGN.md +71 -0
- package/dist/designer/data/systems/friendly/components.html +136 -0
- package/dist/designer/data/systems/friendly/tokens.css +63 -0
- package/dist/designer/data/systems/futuristic/DESIGN.md +71 -0
- package/dist/designer/data/systems/futuristic/components.html +136 -0
- package/dist/designer/data/systems/futuristic/tokens.css +63 -0
- package/dist/designer/data/systems/github/DESIGN.md +155 -0
- package/dist/designer/data/systems/github/components.html +383 -0
- package/dist/designer/data/systems/github/tokens.css +125 -0
- package/dist/designer/data/systems/glassmorphism/DESIGN.md +71 -0
- package/dist/designer/data/systems/glassmorphism/components.html +154 -0
- package/dist/designer/data/systems/glassmorphism/tokens.css +63 -0
- package/dist/designer/data/systems/gradient/DESIGN.md +71 -0
- package/dist/designer/data/systems/gradient/components.html +154 -0
- package/dist/designer/data/systems/gradient/tokens.css +63 -0
- package/dist/designer/data/systems/hashicorp/DESIGN.md +281 -0
- package/dist/designer/data/systems/hashicorp/components.html +502 -0
- package/dist/designer/data/systems/hashicorp/tokens.css +272 -0
- package/dist/designer/data/systems/hud/DESIGN.md +173 -0
- package/dist/designer/data/systems/hud/components.html +136 -0
- package/dist/designer/data/systems/hud/tokens.css +63 -0
- package/dist/designer/data/systems/huggingface/DESIGN.md +149 -0
- package/dist/designer/data/systems/huggingface/components.html +346 -0
- package/dist/designer/data/systems/huggingface/tokens.css +125 -0
- package/dist/designer/data/systems/ibm/DESIGN.md +335 -0
- package/dist/designer/data/systems/ibm/components.html +342 -0
- package/dist/designer/data/systems/ibm/tokens.css +64 -0
- package/dist/designer/data/systems/intercom/DESIGN.md +149 -0
- package/dist/designer/data/systems/intercom/components.html +557 -0
- package/dist/designer/data/systems/intercom/tokens.css +150 -0
- package/dist/designer/data/systems/kami/DESIGN.md +410 -0
- package/dist/designer/data/systems/kami/components.html +601 -0
- package/dist/designer/data/systems/kami/tokens.css +272 -0
- package/dist/designer/data/systems/kraken/DESIGN.md +128 -0
- package/dist/designer/data/systems/kraken/components.html +342 -0
- package/dist/designer/data/systems/kraken/tokens.css +64 -0
- package/dist/designer/data/systems/lamborghini/DESIGN.md +291 -0
- package/dist/designer/data/systems/lamborghini/components.html +342 -0
- package/dist/designer/data/systems/lamborghini/tokens.css +64 -0
- package/dist/designer/data/systems/levels/DESIGN.md +71 -0
- package/dist/designer/data/systems/levels/components.html +154 -0
- package/dist/designer/data/systems/levels/tokens.css +63 -0
- package/dist/designer/data/systems/linear-app/DESIGN.md +370 -0
- package/dist/designer/data/systems/linear-app/components.html +370 -0
- package/dist/designer/data/systems/linear-app/tokens.css +130 -0
- package/dist/designer/data/systems/lingo/DESIGN.md +71 -0
- package/dist/designer/data/systems/lingo/components.html +154 -0
- package/dist/designer/data/systems/lingo/tokens.css +63 -0
- package/dist/designer/data/systems/loom/DESIGN.md +201 -0
- package/dist/designer/data/systems/loom/components.html +446 -0
- package/dist/designer/data/systems/loom/tokens.css +138 -0
- package/dist/designer/data/systems/lovable/DESIGN.md +301 -0
- package/dist/designer/data/systems/lovable/components.html +441 -0
- package/dist/designer/data/systems/lovable/tokens.css +258 -0
- package/dist/designer/data/systems/luxury/DESIGN.md +71 -0
- package/dist/designer/data/systems/luxury/components.html +154 -0
- package/dist/designer/data/systems/luxury/tokens.css +63 -0
- package/dist/designer/data/systems/mastercard/DESIGN.md +368 -0
- package/dist/designer/data/systems/mastercard/components.html +342 -0
- package/dist/designer/data/systems/mastercard/tokens.css +64 -0
- package/dist/designer/data/systems/material/DESIGN.md +71 -0
- package/dist/designer/data/systems/material/components.html +154 -0
- package/dist/designer/data/systems/material/tokens.css +63 -0
- package/dist/designer/data/systems/meta/DESIGN.md +369 -0
- package/dist/designer/data/systems/meta/components.html +398 -0
- package/dist/designer/data/systems/meta/tokens.css +263 -0
- package/dist/designer/data/systems/minimal/DESIGN.md +71 -0
- package/dist/designer/data/systems/minimal/components.html +154 -0
- package/dist/designer/data/systems/minimal/tokens.css +63 -0
- package/dist/designer/data/systems/minimax/DESIGN.md +260 -0
- package/dist/designer/data/systems/minimax/components.html +590 -0
- package/dist/designer/data/systems/minimax/tokens.css +148 -0
- package/dist/designer/data/systems/mintlify/DESIGN.md +329 -0
- package/dist/designer/data/systems/mintlify/components.html +737 -0
- package/dist/designer/data/systems/mintlify/tokens.css +256 -0
- package/dist/designer/data/systems/miro/DESIGN.md +111 -0
- package/dist/designer/data/systems/miro/components.html +342 -0
- package/dist/designer/data/systems/miro/tokens.css +64 -0
- package/dist/designer/data/systems/mission-control/DESIGN.md +474 -0
- package/dist/designer/data/systems/mission-control/components.html +136 -0
- package/dist/designer/data/systems/mission-control/tokens.css +63 -0
- package/dist/designer/data/systems/mistral-ai/DESIGN.md +264 -0
- package/dist/designer/data/systems/mistral-ai/components.html +338 -0
- package/dist/designer/data/systems/mistral-ai/tokens.css +125 -0
- package/dist/designer/data/systems/modern/DESIGN.md +71 -0
- package/dist/designer/data/systems/modern/components.html +154 -0
- package/dist/designer/data/systems/modern/tokens.css +63 -0
- package/dist/designer/data/systems/mongodb/DESIGN.md +269 -0
- package/dist/designer/data/systems/mongodb/components.html +462 -0
- package/dist/designer/data/systems/mongodb/tokens.css +176 -0
- package/dist/designer/data/systems/mono/DESIGN.md +71 -0
- package/dist/designer/data/systems/mono/components.html +136 -0
- package/dist/designer/data/systems/mono/tokens.css +63 -0
- package/dist/designer/data/systems/neobrutalism/DESIGN.md +71 -0
- package/dist/designer/data/systems/neobrutalism/components.html +136 -0
- package/dist/designer/data/systems/neobrutalism/tokens.css +63 -0
- package/dist/designer/data/systems/neon/DESIGN.md +71 -0
- package/dist/designer/data/systems/neon/components.html +136 -0
- package/dist/designer/data/systems/neon/tokens.css +63 -0
- package/dist/designer/data/systems/neumorphism/DESIGN.md +71 -0
- package/dist/designer/data/systems/neumorphism/components.html +136 -0
- package/dist/designer/data/systems/neumorphism/tokens.css +63 -0
- package/dist/designer/data/systems/nike/DESIGN.md +366 -0
- package/dist/designer/data/systems/nike/components.html +512 -0
- package/dist/designer/data/systems/nike/tokens.css +304 -0
- package/dist/designer/data/systems/notion/DESIGN.md +312 -0
- package/dist/designer/data/systems/notion/components.html +413 -0
- package/dist/designer/data/systems/notion/tokens.css +130 -0
- package/dist/designer/data/systems/nvidia/DESIGN.md +296 -0
- package/dist/designer/data/systems/nvidia/components.html +414 -0
- package/dist/designer/data/systems/nvidia/tokens.css +133 -0
- package/dist/designer/data/systems/ollama/DESIGN.md +270 -0
- package/dist/designer/data/systems/ollama/components.html +700 -0
- package/dist/designer/data/systems/ollama/tokens.css +242 -0
- package/dist/designer/data/systems/openai/DESIGN.md +140 -0
- package/dist/designer/data/systems/openai/components.html +382 -0
- package/dist/designer/data/systems/openai/tokens.css +133 -0
- package/dist/designer/data/systems/opencode-ai/DESIGN.md +284 -0
- package/dist/designer/data/systems/opencode-ai/components.html +389 -0
- package/dist/designer/data/systems/opencode-ai/tokens.css +126 -0
- package/dist/designer/data/systems/pacman/DESIGN.md +71 -0
- package/dist/designer/data/systems/pacman/components.html +342 -0
- package/dist/designer/data/systems/pacman/tokens.css +64 -0
- package/dist/designer/data/systems/paper/DESIGN.md +71 -0
- package/dist/designer/data/systems/paper/components.html +136 -0
- package/dist/designer/data/systems/paper/tokens.css +63 -0
- package/dist/designer/data/systems/perplexity/DESIGN.md +286 -0
- package/dist/designer/data/systems/perplexity/components.html +455 -0
- package/dist/designer/data/systems/perplexity/tokens.css +151 -0
- package/dist/designer/data/systems/perspective/DESIGN.md +71 -0
- package/dist/designer/data/systems/perspective/components.html +136 -0
- package/dist/designer/data/systems/perspective/tokens.css +63 -0
- package/dist/designer/data/systems/pinterest/DESIGN.md +233 -0
- package/dist/designer/data/systems/pinterest/components.html +865 -0
- package/dist/designer/data/systems/pinterest/tokens.css +262 -0
- package/dist/designer/data/systems/playstation/DESIGN.md +367 -0
- package/dist/designer/data/systems/playstation/components.html +414 -0
- package/dist/designer/data/systems/playstation/tokens.css +150 -0
- package/dist/designer/data/systems/posthog/DESIGN.md +259 -0
- package/dist/designer/data/systems/posthog/components.html +827 -0
- package/dist/designer/data/systems/posthog/tokens.css +272 -0
- package/dist/designer/data/systems/premium/DESIGN.md +71 -0
- package/dist/designer/data/systems/premium/components.html +154 -0
- package/dist/designer/data/systems/premium/tokens.css +63 -0
- package/dist/designer/data/systems/professional/DESIGN.md +71 -0
- package/dist/designer/data/systems/professional/components.html +136 -0
- package/dist/designer/data/systems/professional/tokens.css +63 -0
- package/dist/designer/data/systems/publication/DESIGN.md +71 -0
- package/dist/designer/data/systems/publication/components.html +154 -0
- package/dist/designer/data/systems/publication/tokens.css +63 -0
- package/dist/designer/data/systems/raycast/DESIGN.md +271 -0
- package/dist/designer/data/systems/raycast/components.html +507 -0
- package/dist/designer/data/systems/raycast/tokens.css +143 -0
- package/dist/designer/data/systems/refined/DESIGN.md +71 -0
- package/dist/designer/data/systems/refined/components.html +136 -0
- package/dist/designer/data/systems/refined/tokens.css +63 -0
- package/dist/designer/data/systems/renault/DESIGN.md +314 -0
- package/dist/designer/data/systems/renault/components.html +154 -0
- package/dist/designer/data/systems/renault/tokens.css +63 -0
- package/dist/designer/data/systems/replicate/DESIGN.md +264 -0
- package/dist/designer/data/systems/replicate/components.html +340 -0
- package/dist/designer/data/systems/replicate/tokens.css +125 -0
- package/dist/designer/data/systems/resend/DESIGN.md +306 -0
- package/dist/designer/data/systems/resend/components.html +839 -0
- package/dist/designer/data/systems/resend/tokens.css +353 -0
- package/dist/designer/data/systems/retro/DESIGN.md +71 -0
- package/dist/designer/data/systems/retro/components.html +136 -0
- package/dist/designer/data/systems/retro/tokens.css +63 -0
- package/dist/designer/data/systems/revolut/DESIGN.md +188 -0
- package/dist/designer/data/systems/revolut/components.html +342 -0
- package/dist/designer/data/systems/revolut/tokens.css +64 -0
- package/dist/designer/data/systems/runwayml/DESIGN.md +247 -0
- package/dist/designer/data/systems/runwayml/components.html +638 -0
- package/dist/designer/data/systems/runwayml/tokens.css +204 -0
- package/dist/designer/data/systems/sanity/DESIGN.md +360 -0
- package/dist/designer/data/systems/sanity/components.html +342 -0
- package/dist/designer/data/systems/sanity/tokens.css +64 -0
- package/dist/designer/data/systems/sentry/DESIGN.md +265 -0
- package/dist/designer/data/systems/sentry/components.html +387 -0
- package/dist/designer/data/systems/sentry/tokens.css +219 -0
- package/dist/designer/data/systems/shadcn/DESIGN.md +71 -0
- package/dist/designer/data/systems/shadcn/components.html +732 -0
- package/dist/designer/data/systems/shadcn/tokens.css +255 -0
- package/dist/designer/data/systems/shopify/DESIGN.md +353 -0
- package/dist/designer/data/systems/shopify/components.html +342 -0
- package/dist/designer/data/systems/shopify/tokens.css +141 -0
- package/dist/designer/data/systems/simple/DESIGN.md +71 -0
- package/dist/designer/data/systems/simple/components.html +136 -0
- package/dist/designer/data/systems/simple/tokens.css +63 -0
- package/dist/designer/data/systems/skeumorphism/DESIGN.md +71 -0
- package/dist/designer/data/systems/skeumorphism/components.html +136 -0
- package/dist/designer/data/systems/skeumorphism/tokens.css +63 -0
- package/dist/designer/data/systems/slack/DESIGN.md +363 -0
- package/dist/designer/data/systems/slack/components.html +387 -0
- package/dist/designer/data/systems/slack/tokens.css +127 -0
- package/dist/designer/data/systems/sleek/DESIGN.md +71 -0
- package/dist/designer/data/systems/sleek/components.html +136 -0
- package/dist/designer/data/systems/sleek/tokens.css +63 -0
- package/dist/designer/data/systems/spacex/DESIGN.md +197 -0
- package/dist/designer/data/systems/spacex/components.html +496 -0
- package/dist/designer/data/systems/spacex/tokens.css +154 -0
- package/dist/designer/data/systems/spacious/DESIGN.md +71 -0
- package/dist/designer/data/systems/spacious/components.html +136 -0
- package/dist/designer/data/systems/spacious/tokens.css +63 -0
- package/dist/designer/data/systems/spotify/DESIGN.md +249 -0
- package/dist/designer/data/systems/spotify/components.html +365 -0
- package/dist/designer/data/systems/spotify/tokens.css +127 -0
- package/dist/designer/data/systems/starbucks/DESIGN.md +583 -0
- package/dist/designer/data/systems/starbucks/components.html +493 -0
- package/dist/designer/data/systems/starbucks/tokens.css +182 -0
- package/dist/designer/data/systems/storytelling/DESIGN.md +71 -0
- package/dist/designer/data/systems/storytelling/components.html +136 -0
- package/dist/designer/data/systems/storytelling/tokens.css +63 -0
- package/dist/designer/data/systems/stripe/DESIGN.md +325 -0
- package/dist/designer/data/systems/stripe/components.html +1018 -0
- package/dist/designer/data/systems/stripe/tokens.css +295 -0
- package/dist/designer/data/systems/supabase/DESIGN.md +258 -0
- package/dist/designer/data/systems/supabase/components.html +741 -0
- package/dist/designer/data/systems/supabase/tokens.css +294 -0
- package/dist/designer/data/systems/superhuman/DESIGN.md +255 -0
- package/dist/designer/data/systems/superhuman/components.html +537 -0
- package/dist/designer/data/systems/superhuman/tokens.css +160 -0
- package/dist/designer/data/systems/tesla/DESIGN.md +289 -0
- package/dist/designer/data/systems/tesla/components.html +724 -0
- package/dist/designer/data/systems/tesla/tokens.css +285 -0
- package/dist/designer/data/systems/tetris/DESIGN.md +71 -0
- package/dist/designer/data/systems/tetris/components.html +342 -0
- package/dist/designer/data/systems/tetris/tokens.css +64 -0
- package/dist/designer/data/systems/theverge/DESIGN.md +342 -0
- package/dist/designer/data/systems/theverge/components.html +342 -0
- package/dist/designer/data/systems/theverge/tokens.css +64 -0
- package/dist/designer/data/systems/together-ai/DESIGN.md +266 -0
- package/dist/designer/data/systems/together-ai/components.html +422 -0
- package/dist/designer/data/systems/together-ai/tokens.css +127 -0
- package/dist/designer/data/systems/totality-festival/DESIGN.md +206 -0
- package/dist/designer/data/systems/totality-festival/components.html +136 -0
- package/dist/designer/data/systems/totality-festival/tokens.css +63 -0
- package/dist/designer/data/systems/trading-terminal/DESIGN.md +178 -0
- package/dist/designer/data/systems/trading-terminal/components.html +154 -0
- package/dist/designer/data/systems/trading-terminal/tokens.css +63 -0
- package/dist/designer/data/systems/uber/DESIGN.md +298 -0
- package/dist/designer/data/systems/uber/components.html +347 -0
- package/dist/designer/data/systems/uber/tokens.css +131 -0
- package/dist/designer/data/systems/urdu/DESIGN.md +1002 -0
- package/dist/designer/data/systems/urdu/components.html +136 -0
- package/dist/designer/data/systems/urdu/tokens.css +63 -0
- package/dist/designer/data/systems/vercel/DESIGN.md +313 -0
- package/dist/designer/data/systems/vercel/components.html +839 -0
- package/dist/designer/data/systems/vercel/tokens.css +270 -0
- package/dist/designer/data/systems/vibrant/DESIGN.md +71 -0
- package/dist/designer/data/systems/vibrant/components.html +136 -0
- package/dist/designer/data/systems/vibrant/tokens.css +63 -0
- package/dist/designer/data/systems/vintage/DESIGN.md +71 -0
- package/dist/designer/data/systems/vintage/components.html +136 -0
- package/dist/designer/data/systems/vintage/tokens.css +63 -0
- package/dist/designer/data/systems/vodafone/DESIGN.md +426 -0
- package/dist/designer/data/systems/vodafone/components.html +342 -0
- package/dist/designer/data/systems/vodafone/tokens.css +64 -0
- package/dist/designer/data/systems/voltagent/DESIGN.md +326 -0
- package/dist/designer/data/systems/voltagent/components.html +154 -0
- package/dist/designer/data/systems/voltagent/tokens.css +63 -0
- package/dist/designer/data/systems/warm-editorial/DESIGN.md +65 -0
- package/dist/designer/data/systems/warm-editorial/components.html +136 -0
- package/dist/designer/data/systems/warm-editorial/tokens.css +63 -0
- package/dist/designer/data/systems/warp/DESIGN.md +256 -0
- package/dist/designer/data/systems/warp/components.html +411 -0
- package/dist/designer/data/systems/warp/tokens.css +156 -0
- package/dist/designer/data/systems/webex/DESIGN.md +207 -0
- package/dist/designer/data/systems/webex/components.html +342 -0
- package/dist/designer/data/systems/webex/tokens.css +64 -0
- package/dist/designer/data/systems/webflow/DESIGN.md +95 -0
- package/dist/designer/data/systems/webflow/components.html +413 -0
- package/dist/designer/data/systems/webflow/tokens.css +191 -0
- package/dist/designer/data/systems/wechat/DESIGN.md +302 -0
- package/dist/designer/data/systems/wechat/components.html +507 -0
- package/dist/designer/data/systems/wechat/tokens.css +176 -0
- package/dist/designer/data/systems/wired/DESIGN.md +281 -0
- package/dist/designer/data/systems/wired/components.html +342 -0
- package/dist/designer/data/systems/wired/tokens.css +64 -0
- package/dist/designer/data/systems/wise/DESIGN.md +176 -0
- package/dist/designer/data/systems/wise/components.html +365 -0
- package/dist/designer/data/systems/wise/tokens.css +141 -0
- package/dist/designer/data/systems/x-ai/DESIGN.md +260 -0
- package/dist/designer/data/systems/x-ai/components.html +460 -0
- package/dist/designer/data/systems/x-ai/tokens.css +268 -0
- package/dist/designer/data/systems/xiaohongshu/DESIGN.md +402 -0
- package/dist/designer/data/systems/xiaohongshu/components.html +865 -0
- package/dist/designer/data/systems/xiaohongshu/tokens.css +193 -0
- package/dist/designer/data/systems/zapier/DESIGN.md +331 -0
- package/dist/designer/data/systems/zapier/components.html +342 -0
- package/dist/designer/data/systems/zapier/tokens.css +64 -0
- package/dist/designer/guidelines.js +176 -0
- package/dist/designer/index.js +236 -0
- package/dist/designer/skills.js +1675 -0
- package/dist/designer/systems.js +216 -0
- package/dist/server/pi-bridge.js +155 -5
- package/dist/server/session-stream.js +45 -1
- package/package.json +1 -1
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
/* ─────────────────────────────────────────────────────────────────────────
|
|
2
|
+
* design-systems/opencode-ai/tokens.css
|
|
3
|
+
*
|
|
4
|
+
* Structured token bindings for "Design System Inspired by OpenCode".
|
|
5
|
+
* Terminal-native dark theme: warm near-black canvas, Berkeley Mono as
|
|
6
|
+
* the sole typeface, flat depth (no shadows), Apple HIG semantic colors.
|
|
7
|
+
*
|
|
8
|
+
* Key brand decisions encoded here:
|
|
9
|
+
* - Dark-on-dark: #201d1d (warm near-black) as page bg, #302c2c for surface
|
|
10
|
+
* - #fdfcfc (barely-warm off-white) as primary text — never pure white
|
|
11
|
+
* - Berkeley Mono ONLY — no second typeface, no typographic variation
|
|
12
|
+
* - FLAT depth system — zero shadows; depth via borders and bg shifts
|
|
13
|
+
* - Warm borders: rgba(15,0,0,0.12) — subtle red tint ties to warm palette
|
|
14
|
+
* - Apple HIG semantic colors (#007aff, #ff3b30, #30d158, #ff9f0a)
|
|
15
|
+
* - Narrow reading column (~880px) — single-column, text-centric
|
|
16
|
+
* ─────────────────────────────────────────────────────────────────── */
|
|
17
|
+
|
|
18
|
+
:root {
|
|
19
|
+
/* ─── Surface (dark theme) ────────────────────────────────────────
|
|
20
|
+
* Warm near-black → slightly lighter dark surface.
|
|
21
|
+
* The reddish warmth (rgb(32,29,29)) is subtle but essential. */
|
|
22
|
+
--bg: #201d1d; /* OpenCode Dark — warm near-black with reddish undertone */
|
|
23
|
+
--surface: #302c2c; /* Dark Surface — elevated containers, slight differentiation */
|
|
24
|
+
--surface-warm: var(--surface); /* alias — no separate warm tier needed */
|
|
25
|
+
|
|
26
|
+
/* ─── Foreground (on dark) ────────────────────────────────────────
|
|
27
|
+
* Warm off-white text — never clinical pure white. */
|
|
28
|
+
--fg: #fdfcfc; /* OpenCode Light — barely-warm off-white primary text */
|
|
29
|
+
--fg-2: #c8c6c4; /* Warm light gray — secondary on dark */
|
|
30
|
+
--muted: #9a9898; /* Mid Gray — secondary text, muted links */
|
|
31
|
+
--meta: #6e6e73; /* Text Muted — disabled text, placeholders */
|
|
32
|
+
|
|
33
|
+
/* ─── Border (warm transparent) ──────────────────────────────────
|
|
34
|
+
* The warm red tint (rgba(15,0,0,...)) in borders ties them to the
|
|
35
|
+
* overall warm dark palette. Use #646262 for visible outlines. */
|
|
36
|
+
--border: #464343; /* Warm dark border — visible against bg */
|
|
37
|
+
--border-soft: #302c2c; /* Same as surface — barely-visible inner separator */
|
|
38
|
+
|
|
39
|
+
/* ─── Accent ──────────────────────────────────────────────────────
|
|
40
|
+
* Apple system blue — #007aff. Familiar, trustworthy, high-contrast
|
|
41
|
+
* on the warm dark canvas. The full three-stage hover sequence:
|
|
42
|
+
* #007aff → #0056b3 (hover) → #004085 (active). */
|
|
43
|
+
--accent: #007aff;
|
|
44
|
+
--accent-on: #ffffff;
|
|
45
|
+
--accent-hover: #0056b3; /* Accent Blue Hover — explicitly defined */
|
|
46
|
+
--accent-active: #004085; /* Accent Blue Active — deeply pressed */
|
|
47
|
+
|
|
48
|
+
/* ─── Semantic (Apple HIG palette) ────────────────────────────────
|
|
49
|
+
* Familiar trustworthy signals on a dark terminal canvas. */
|
|
50
|
+
--success: #30d158; /* Apple system green */
|
|
51
|
+
--warn: #ff9f0a; /* Apple system orange */
|
|
52
|
+
--danger: #ff3b30; /* Apple system red */
|
|
53
|
+
|
|
54
|
+
/* ─── Typography ──────────────────────────────────────────────────
|
|
55
|
+
* Berkeley Mono is the ONLY font. No typographic variation — no
|
|
56
|
+
* display face, no body face — "everything is code" philosophy.
|
|
57
|
+
* Hierarchy via size and weight alone (400 / 500 / 700). */
|
|
58
|
+
--font-display: "Berkeley Mono", "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
|
|
59
|
+
--font-body: "Berkeley Mono", "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
|
|
60
|
+
--font-mono: "Berkeley Mono", "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
|
|
61
|
+
|
|
62
|
+
/* Type scale — DESIGN.md §3. Heading 1 at 38px, rest at 16px variants.
|
|
63
|
+
* The system is intentionally compressed — terminal scale. */
|
|
64
|
+
--text-xs: 12px;
|
|
65
|
+
--text-sm: 14px; /* Caption — footnotes, metadata (lh 2.0) */
|
|
66
|
+
--text-base: 16px; /* Body — standard text (weight 400 or 500) */
|
|
67
|
+
--text-lg: 18px;
|
|
68
|
+
--text-xl: 22px;
|
|
69
|
+
--text-2xl: 28px;
|
|
70
|
+
--text-3xl: 38px; /* Heading 1 — hero headlines (weight 700, lh 1.5) */
|
|
71
|
+
--text-4xl: 48px; /* Extended display if needed */
|
|
72
|
+
|
|
73
|
+
--leading-body: 1.5; /* Monospace grid breathes at 1.5 */
|
|
74
|
+
--leading-tight: 1.0; /* Compact labels, tab items */
|
|
75
|
+
--tracking-display: 0em; /* Monospace doesn't need letter-spacing manipulation */
|
|
76
|
+
|
|
77
|
+
/* ─── Spacing ─────────────────────────────────────────────────────
|
|
78
|
+
* 8px base unit. Generous extended scale (up to 96px) for sections.
|
|
79
|
+
* Sections separated by spacing alone — no decorative dividers. */
|
|
80
|
+
--space-1: 4px;
|
|
81
|
+
--space-2: 8px;
|
|
82
|
+
--space-3: 12px;
|
|
83
|
+
--space-4: 16px;
|
|
84
|
+
--space-5: 20px;
|
|
85
|
+
--space-6: 24px;
|
|
86
|
+
--space-8: 32px;
|
|
87
|
+
--space-12: 48px;
|
|
88
|
+
|
|
89
|
+
--section-y-desktop: 80px; /* Terminal-like generous spacing between sections */
|
|
90
|
+
--section-y-tablet: 64px;
|
|
91
|
+
--section-y-phone: 48px;
|
|
92
|
+
|
|
93
|
+
/* ─── Radius ──────────────────────────────────────────────────────
|
|
94
|
+
* Minimal: 4px everywhere, 6px for form inputs (the roundest element).
|
|
95
|
+
* "Terminals don't have rounded corners" — utilitarian aesthetic. */
|
|
96
|
+
--radius-sm: 4px; /* Default for all elements */
|
|
97
|
+
--radius-md: 6px; /* Form inputs — slightly more approachable */
|
|
98
|
+
--radius-lg: 8px; /* Rare — largest container radius */
|
|
99
|
+
--radius-pill: 9999px; /* Declared but not part of the OpenCode aesthetic */
|
|
100
|
+
|
|
101
|
+
/* ─── Elevation (FLAT) ────────────────────────────────────────────
|
|
102
|
+
* Zero shadows — consistent with the terminal aesthetic.
|
|
103
|
+
* Depth via border treatments and background color shifts ONLY.
|
|
104
|
+
* All three levels use rings/outlines, never blur shadows. */
|
|
105
|
+
--elev-flat: none;
|
|
106
|
+
--elev-ring: 0 0 0 1px var(--border);
|
|
107
|
+
--elev-raised: 0 0 0 2px var(--border); /* Slightly more prominent ring — no blur */
|
|
108
|
+
|
|
109
|
+
/* ─── Focus ring ──────────────────────────────────────────────────
|
|
110
|
+
* Accent blue focus ring — no shadow-based ring (flat system). */
|
|
111
|
+
--focus-ring: 0 0 0 2px var(--accent);
|
|
112
|
+
|
|
113
|
+
/* ─── Motion ──────────────────────────────────────────────────────
|
|
114
|
+
* Terminal-inspired: instant state changes. 100ms for snappy feedback. */
|
|
115
|
+
--motion-fast: 100ms;
|
|
116
|
+
--motion-base: 150ms;
|
|
117
|
+
--ease-standard: cubic-bezier(0.2, 0, 0, 1);
|
|
118
|
+
|
|
119
|
+
/* ─── Layout ──────────────────────────────────────────────────────
|
|
120
|
+
* Narrow reading column (880px) — single-column, text-centric.
|
|
121
|
+
* Generous side margins focus attention on the content. */
|
|
122
|
+
--container-max: 880px;
|
|
123
|
+
--container-gutter-desktop: 24px;
|
|
124
|
+
--container-gutter-tablet: 20px;
|
|
125
|
+
--container-gutter-phone: 16px;
|
|
126
|
+
}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
# Design System Inspired by Pacman
|
|
2
|
+
|
|
3
|
+
> Category: Themed & Unique
|
|
4
|
+
> Retro arcade-inspired design with pixel fonts, dotted borders, playful high-contrast colors, and 8-bit game aesthetics.
|
|
5
|
+
|
|
6
|
+
## 1. Visual Theme & Atmosphere
|
|
7
|
+
|
|
8
|
+
Retro arcade-inspired design with pixel fonts, dotted borders, playful high-contrast colors, and 8-bit game aesthetics.
|
|
9
|
+
|
|
10
|
+
- **Visual style:** high-contrast, playful, dotted borders
|
|
11
|
+
- **Color stance:** primary, secondary, success, warning, danger, info, surface/subtle layers
|
|
12
|
+
- **Design intent:** Keep outputs recognizable to this style family while preserving usability and readability.
|
|
13
|
+
|
|
14
|
+
## 2. Color
|
|
15
|
+
|
|
16
|
+
- **Primary:** `#2A3FE5` — Token from style foundations.
|
|
17
|
+
- **Secondary:** `#F4B9B0` — 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:** `#000000` — Token from style foundations.
|
|
22
|
+
- **Text:** `#111827` — Token from style foundations.
|
|
23
|
+
- **Neutral:** `#000000` — Derived from the surface token for official format compatibility.
|
|
24
|
+
|
|
25
|
+
- Favor Primary (#2A3FE5) for CTA emphasis.
|
|
26
|
+
- Use Surface (#000000) for large backgrounds and cards.
|
|
27
|
+
- Keep body copy on Text (#111827) for legibility.
|
|
28
|
+
|
|
29
|
+
## 3. Typography
|
|
30
|
+
|
|
31
|
+
- **Scale:** desktop-first expressive scale
|
|
32
|
+
- **Families:** primary=Press Start 2P, display=Press Start 2P, mono=Space 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 `#2A3FE5`; 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 (#2A3FE5) 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,342 @@
|
|
|
1
|
+
<!doctype html>
|
|
2
|
+
<html lang="en">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="utf-8" />
|
|
5
|
+
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
|
6
|
+
<title>Pac-Man - reference components</title>
|
|
7
|
+
<meta
|
|
8
|
+
name="description"
|
|
9
|
+
content="Reference fixture for design-systems/pacman: classic arcade maze language with black board, yellow signal, and rounded score capsules."
|
|
10
|
+
/>
|
|
11
|
+
<style>
|
|
12
|
+
:root {
|
|
13
|
+
--bg: #050505;
|
|
14
|
+
--surface: #101014;
|
|
15
|
+
--surface-warm: #1f1b08;
|
|
16
|
+
--fg: #fff7d6;
|
|
17
|
+
--fg-2: #f6e79c;
|
|
18
|
+
--muted: #b9a85d;
|
|
19
|
+
--meta: #ffcc00;
|
|
20
|
+
--border: #2338ff;
|
|
21
|
+
--border-soft: #17218a;
|
|
22
|
+
--accent: #ffcc00;
|
|
23
|
+
--accent-on: #050505;
|
|
24
|
+
--accent-hover: color-mix(in oklab, var(--accent), black 8%);
|
|
25
|
+
--accent-active: color-mix(in oklab, var(--accent), black 14%);
|
|
26
|
+
--success: #00ff66;
|
|
27
|
+
--warn: #ff9900;
|
|
28
|
+
--danger: #ff3b3b;
|
|
29
|
+
--font-display: "Press Start 2P", "Arial Black", system-ui, sans-serif;
|
|
30
|
+
--font-body: "Inter", system-ui, sans-serif;
|
|
31
|
+
--font-mono: "Press Start 2P", ui-monospace, monospace;
|
|
32
|
+
--text-xs: 10px;
|
|
33
|
+
--text-sm: 12px;
|
|
34
|
+
--text-base: 14px;
|
|
35
|
+
--text-lg: 16px;
|
|
36
|
+
--text-xl: 20px;
|
|
37
|
+
--text-2xl: 30px;
|
|
38
|
+
--text-3xl: 44px;
|
|
39
|
+
--text-4xl: 64px;
|
|
40
|
+
--leading-body: 1.6;
|
|
41
|
+
--leading-tight: 1.08;
|
|
42
|
+
--tracking-display: 0;
|
|
43
|
+
--space-1: 4px;
|
|
44
|
+
--space-2: 8px;
|
|
45
|
+
--space-3: 12px;
|
|
46
|
+
--space-4: 16px;
|
|
47
|
+
--space-5: 20px;
|
|
48
|
+
--space-6: 24px;
|
|
49
|
+
--space-8: 32px;
|
|
50
|
+
--space-12: 48px;
|
|
51
|
+
--section-y-desktop: 84px;
|
|
52
|
+
--section-y-tablet: 60px;
|
|
53
|
+
--section-y-phone: 44px;
|
|
54
|
+
--radius-sm: 10px;
|
|
55
|
+
--radius-md: 18px;
|
|
56
|
+
--radius-lg: 9999px;
|
|
57
|
+
--radius-pill: 9999px;
|
|
58
|
+
--elev-flat: none;
|
|
59
|
+
--elev-ring: 0 0 0 1px var(--border);
|
|
60
|
+
--elev-raised: 0 0 0 2px #2338ff, 0 22px 60px rgba(0, 0, 0, 0.46);
|
|
61
|
+
--focus-ring: 0 0 0 4px rgba(255, 204, 0, 0.34);
|
|
62
|
+
--motion-fast: 90ms;
|
|
63
|
+
--motion-base: 160ms;
|
|
64
|
+
--ease-standard: cubic-bezier(0.2, 0, 0, 1);
|
|
65
|
+
--container-max: 1080px;
|
|
66
|
+
--container-gutter-desktop: 32px;
|
|
67
|
+
--container-gutter-tablet: 24px;
|
|
68
|
+
--container-gutter-phone: 16px;
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
*, *::before, *::after { box-sizing: border-box; }
|
|
72
|
+
html, body { margin: 0; padding: 0; }
|
|
73
|
+
body {
|
|
74
|
+
min-height: 100vh;
|
|
75
|
+
background: var(--bg);
|
|
76
|
+
color: var(--fg);
|
|
77
|
+
font-family: var(--font-body);
|
|
78
|
+
font-size: var(--text-base);
|
|
79
|
+
line-height: var(--leading-body);
|
|
80
|
+
-webkit-font-smoothing: antialiased;
|
|
81
|
+
}
|
|
82
|
+
.page {
|
|
83
|
+
min-height: 100vh;
|
|
84
|
+
background: radial-gradient(circle at 16% 28%, #ffcc00 0 10%, transparent 11%), linear-gradient(135deg, #050505 0%, #101014 100%);
|
|
85
|
+
}
|
|
86
|
+
.container {
|
|
87
|
+
max-width: var(--container-max);
|
|
88
|
+
margin-inline: auto;
|
|
89
|
+
padding-inline: var(--container-gutter-desktop);
|
|
90
|
+
}
|
|
91
|
+
section { padding-block: var(--section-y-desktop); }
|
|
92
|
+
@media (max-width: 1023px) {
|
|
93
|
+
.container { padding-inline: var(--container-gutter-tablet); }
|
|
94
|
+
section { padding-block: var(--section-y-tablet); }
|
|
95
|
+
}
|
|
96
|
+
@media (max-width: 639px) {
|
|
97
|
+
.container { padding-inline: var(--container-gutter-phone); }
|
|
98
|
+
section { padding-block: var(--section-y-phone); }
|
|
99
|
+
}
|
|
100
|
+
h1, h2, h3, p { margin: 0; }
|
|
101
|
+
h1, h2, h3 {
|
|
102
|
+
font-family: var(--font-display);
|
|
103
|
+
line-height: var(--leading-tight);
|
|
104
|
+
letter-spacing: var(--tracking-display);
|
|
105
|
+
}
|
|
106
|
+
h1 { max-width: 820px; font-size: var(--text-4xl); font-weight: 700; }
|
|
107
|
+
h2 { font-size: var(--text-3xl); font-weight: 650; }
|
|
108
|
+
h3 { font-size: var(--text-xl); font-weight: 650; }
|
|
109
|
+
.eyebrow {
|
|
110
|
+
color: var(--meta);
|
|
111
|
+
font-family: var(--font-mono);
|
|
112
|
+
font-size: var(--text-xs);
|
|
113
|
+
font-weight: 700;
|
|
114
|
+
letter-spacing: 0.12em;
|
|
115
|
+
text-transform: uppercase;
|
|
116
|
+
}
|
|
117
|
+
.lead {
|
|
118
|
+
max-width: 620px;
|
|
119
|
+
color: var(--fg-2);
|
|
120
|
+
font-size: var(--text-lg);
|
|
121
|
+
}
|
|
122
|
+
.hero {
|
|
123
|
+
display: grid;
|
|
124
|
+
grid-template-columns: minmax(0, 1.1fr) minmax(320px, 0.9fr);
|
|
125
|
+
gap: var(--space-8);
|
|
126
|
+
align-items: center;
|
|
127
|
+
}
|
|
128
|
+
.stack > * + * { margin-block-start: var(--space-4); }
|
|
129
|
+
.actions {
|
|
130
|
+
display: flex;
|
|
131
|
+
flex-wrap: wrap;
|
|
132
|
+
gap: var(--space-3);
|
|
133
|
+
margin-block-start: var(--space-6);
|
|
134
|
+
}
|
|
135
|
+
.btn {
|
|
136
|
+
display: inline-flex;
|
|
137
|
+
align-items: center;
|
|
138
|
+
justify-content: center;
|
|
139
|
+
min-height: 44px;
|
|
140
|
+
padding: 0 var(--space-5);
|
|
141
|
+
border: 1px solid transparent;
|
|
142
|
+
border-radius: var(--radius-md);
|
|
143
|
+
font: 700 var(--text-sm) / 1 var(--font-body);
|
|
144
|
+
text-decoration: none;
|
|
145
|
+
cursor: pointer;
|
|
146
|
+
transition:
|
|
147
|
+
background-color var(--motion-fast) var(--ease-standard),
|
|
148
|
+
border-color var(--motion-fast) var(--ease-standard),
|
|
149
|
+
color var(--motion-fast) var(--ease-standard),
|
|
150
|
+
transform var(--motion-fast) var(--ease-standard),
|
|
151
|
+
box-shadow var(--motion-fast) var(--ease-standard);
|
|
152
|
+
}
|
|
153
|
+
.btn:focus-visible { outline: none; box-shadow: var(--focus-ring); }
|
|
154
|
+
.btn-primary { background: var(--accent); color: var(--accent-on); }
|
|
155
|
+
.btn-primary:hover { background: var(--accent-hover); transform: translateY(-1px); }
|
|
156
|
+
.btn-secondary { background: var(--surface); color: var(--fg); border-color: var(--border); box-shadow: var(--elev-ring); }
|
|
157
|
+
.btn-secondary:hover { border-color: var(--accent); color: var(--accent); }
|
|
158
|
+
.panel {
|
|
159
|
+
background: color-mix(in oklab, var(--surface), transparent 4%);
|
|
160
|
+
border: 1px solid var(--border);
|
|
161
|
+
border-radius: var(--radius-lg);
|
|
162
|
+
box-shadow: var(--elev-raised);
|
|
163
|
+
overflow: hidden;
|
|
164
|
+
}
|
|
165
|
+
.panel-head {
|
|
166
|
+
display: flex;
|
|
167
|
+
align-items: center;
|
|
168
|
+
justify-content: space-between;
|
|
169
|
+
gap: var(--space-4);
|
|
170
|
+
padding: var(--space-5);
|
|
171
|
+
border-bottom: 1px solid var(--border-soft);
|
|
172
|
+
}
|
|
173
|
+
.status {
|
|
174
|
+
display: inline-flex;
|
|
175
|
+
align-items: center;
|
|
176
|
+
gap: var(--space-2);
|
|
177
|
+
color: var(--meta);
|
|
178
|
+
font: 700 var(--text-xs) / 1 var(--font-mono);
|
|
179
|
+
text-transform: uppercase;
|
|
180
|
+
letter-spacing: 0.08em;
|
|
181
|
+
}
|
|
182
|
+
.status::before {
|
|
183
|
+
width: 8px;
|
|
184
|
+
height: 8px;
|
|
185
|
+
border-radius: var(--radius-pill);
|
|
186
|
+
background: var(--success);
|
|
187
|
+
content: "";
|
|
188
|
+
}
|
|
189
|
+
.metric-grid {
|
|
190
|
+
display: grid;
|
|
191
|
+
grid-template-columns: repeat(3, minmax(0, 1fr));
|
|
192
|
+
border-bottom: 1px solid var(--border-soft);
|
|
193
|
+
}
|
|
194
|
+
.metric {
|
|
195
|
+
padding: var(--space-5);
|
|
196
|
+
border-right: 1px solid var(--border-soft);
|
|
197
|
+
}
|
|
198
|
+
.metric:last-child { border-right: 0; }
|
|
199
|
+
.metric strong {
|
|
200
|
+
display: block;
|
|
201
|
+
font-family: var(--font-display);
|
|
202
|
+
font-size: var(--text-2xl);
|
|
203
|
+
line-height: var(--leading-tight);
|
|
204
|
+
}
|
|
205
|
+
.metric span { color: var(--muted); font-size: var(--text-sm); }
|
|
206
|
+
.card-row {
|
|
207
|
+
display: grid;
|
|
208
|
+
grid-template-columns: 1fr 1fr;
|
|
209
|
+
gap: var(--space-4);
|
|
210
|
+
padding: var(--space-5);
|
|
211
|
+
}
|
|
212
|
+
.mini-card {
|
|
213
|
+
min-height: 148px;
|
|
214
|
+
padding: var(--space-5);
|
|
215
|
+
border: 1px solid var(--border-soft);
|
|
216
|
+
border-radius: var(--radius-md);
|
|
217
|
+
background: var(--surface-warm);
|
|
218
|
+
}
|
|
219
|
+
.mini-card p { color: var(--muted); font-size: var(--text-sm); margin-block-start: var(--space-3); }
|
|
220
|
+
.swatches {
|
|
221
|
+
display: flex;
|
|
222
|
+
gap: var(--space-2);
|
|
223
|
+
margin-block-start: var(--space-4);
|
|
224
|
+
}
|
|
225
|
+
.swatch {
|
|
226
|
+
width: 32px;
|
|
227
|
+
height: 32px;
|
|
228
|
+
border-radius: var(--radius-sm);
|
|
229
|
+
border: 1px solid var(--border);
|
|
230
|
+
}
|
|
231
|
+
.swatch.accent { background: var(--accent); }
|
|
232
|
+
.swatch.surface { background: var(--surface); }
|
|
233
|
+
.swatch.warm { background: var(--surface-warm); }
|
|
234
|
+
.swatch.fg { background: var(--fg); }
|
|
235
|
+
.field {
|
|
236
|
+
display: grid;
|
|
237
|
+
gap: var(--space-2);
|
|
238
|
+
margin-block-start: var(--space-5);
|
|
239
|
+
}
|
|
240
|
+
label { color: var(--fg-2); font-size: var(--text-sm); font-weight: 700; }
|
|
241
|
+
input {
|
|
242
|
+
width: 100%;
|
|
243
|
+
min-height: 46px;
|
|
244
|
+
padding: 0 var(--space-4);
|
|
245
|
+
border: 1px solid var(--border);
|
|
246
|
+
border-radius: var(--radius-sm);
|
|
247
|
+
background: var(--surface);
|
|
248
|
+
color: var(--fg);
|
|
249
|
+
font: inherit;
|
|
250
|
+
}
|
|
251
|
+
input:focus { outline: none; box-shadow: var(--focus-ring); border-color: var(--accent); }
|
|
252
|
+
.lower {
|
|
253
|
+
display: grid;
|
|
254
|
+
grid-template-columns: repeat(3, minmax(0, 1fr));
|
|
255
|
+
gap: var(--space-4);
|
|
256
|
+
}
|
|
257
|
+
.tile {
|
|
258
|
+
padding: var(--space-5);
|
|
259
|
+
border: 1px solid var(--border);
|
|
260
|
+
border-radius: var(--radius-md);
|
|
261
|
+
background: var(--surface);
|
|
262
|
+
}
|
|
263
|
+
.tile p { color: var(--muted); font-size: var(--text-sm); margin-block-start: var(--space-3); }
|
|
264
|
+
@media (max-width: 860px) {
|
|
265
|
+
.hero, .lower { grid-template-columns: 1fr; }
|
|
266
|
+
.metric-grid, .card-row { grid-template-columns: 1fr; }
|
|
267
|
+
.metric { border-right: 0; border-bottom: 1px solid var(--border-soft); }
|
|
268
|
+
.metric:last-child { border-bottom: 0; }
|
|
269
|
+
}
|
|
270
|
+
</style>
|
|
271
|
+
</head>
|
|
272
|
+
<body>
|
|
273
|
+
<main class="page">
|
|
274
|
+
<section>
|
|
275
|
+
<div class="container hero">
|
|
276
|
+
<div class="stack">
|
|
277
|
+
<p class="eyebrow">Pac-Man design system</p>
|
|
278
|
+
<h1>Maze chase cabinet</h1>
|
|
279
|
+
<p class="lead">Black arcade board, yellow hero action, and playful maze modules.</p>
|
|
280
|
+
<div class="actions" aria-label="Reference actions">
|
|
281
|
+
<a class="btn btn-primary" href="#">Primary yellow arcade pill</a>
|
|
282
|
+
<a class="btn btn-secondary" href="#">Secondary action</a>
|
|
283
|
+
</div>
|
|
284
|
+
</div>
|
|
285
|
+
<article class="panel" aria-label="Pac-Man component preview">
|
|
286
|
+
<div class="panel-head">
|
|
287
|
+
<div>
|
|
288
|
+
<p class="eyebrow">Live module</p>
|
|
289
|
+
<h3>blue maze panel</h3>
|
|
290
|
+
</div>
|
|
291
|
+
<span class="status">online</span>
|
|
292
|
+
</div>
|
|
293
|
+
<div class="metric-grid">
|
|
294
|
+
<div class="metric"><strong>98%</strong><span>Signal quality</span></div>
|
|
295
|
+
<div class="metric"><strong>24</strong><span>Active flows</span></div>
|
|
296
|
+
<div class="metric"><strong>3.2s</strong><span>Response time</span></div>
|
|
297
|
+
</div>
|
|
298
|
+
<div class="card-row">
|
|
299
|
+
<div class="mini-card">
|
|
300
|
+
<h3>Palette</h3>
|
|
301
|
+
<p>classic arcade maze language with black board, yellow signal, and rounded score capsules.</p>
|
|
302
|
+
<div class="swatches" aria-label="Token swatches">
|
|
303
|
+
<span class="swatch accent"></span>
|
|
304
|
+
<span class="swatch surface"></span>
|
|
305
|
+
<span class="swatch warm"></span>
|
|
306
|
+
<span class="swatch fg"></span>
|
|
307
|
+
</div>
|
|
308
|
+
</div>
|
|
309
|
+
<div class="mini-card">
|
|
310
|
+
<h3>Control</h3>
|
|
311
|
+
<p>Focus, hover, and status states share the same brand signal.</p>
|
|
312
|
+
<div class="field">
|
|
313
|
+
<label for="pacman-input">Reference input</label>
|
|
314
|
+
<input id="pacman-input" value="Pac-Man system token" />
|
|
315
|
+
</div>
|
|
316
|
+
</div>
|
|
317
|
+
</div>
|
|
318
|
+
</article>
|
|
319
|
+
</div>
|
|
320
|
+
</section>
|
|
321
|
+
<section>
|
|
322
|
+
<div class="container lower">
|
|
323
|
+
<article class="tile">
|
|
324
|
+
<p class="eyebrow">Typography</p>
|
|
325
|
+
<h2>Display rhythm</h2>
|
|
326
|
+
<p>Headlines use the brand display stack with the declared scale and leading.</p>
|
|
327
|
+
</article>
|
|
328
|
+
<article class="tile">
|
|
329
|
+
<p class="eyebrow">Surface</p>
|
|
330
|
+
<h2>Layer system</h2>
|
|
331
|
+
<p>Cards, warm panels, borders, and raised states resolve through shared tokens.</p>
|
|
332
|
+
</article>
|
|
333
|
+
<article class="tile">
|
|
334
|
+
<p class="eyebrow">Interaction</p>
|
|
335
|
+
<h2>Motion states</h2>
|
|
336
|
+
<p>Buttons, inputs, and panels use brand-specific focus rings and easing.</p>
|
|
337
|
+
</article>
|
|
338
|
+
</div>
|
|
339
|
+
</section>
|
|
340
|
+
</main>
|
|
341
|
+
</body>
|
|
342
|
+
</html>
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
/* design-systems/pacman/tokens.css
|
|
2
|
+
*
|
|
3
|
+
* Structured token bindings for Pac-Man.
|
|
4
|
+
* classic arcade maze language with black board, yellow signal, and rounded score capsules.
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
:root {
|
|
8
|
+
--bg: #050505;
|
|
9
|
+
--surface: #101014;
|
|
10
|
+
--surface-warm: #1f1b08;
|
|
11
|
+
--fg: #fff7d6;
|
|
12
|
+
--fg-2: #f6e79c;
|
|
13
|
+
--muted: #b9a85d;
|
|
14
|
+
--meta: #ffcc00;
|
|
15
|
+
--border: #2338ff;
|
|
16
|
+
--border-soft: #17218a;
|
|
17
|
+
--accent: #ffcc00;
|
|
18
|
+
--accent-on: #050505;
|
|
19
|
+
--accent-hover: color-mix(in oklab, var(--accent), black 8%);
|
|
20
|
+
--accent-active: color-mix(in oklab, var(--accent), black 14%);
|
|
21
|
+
--success: #00ff66;
|
|
22
|
+
--warn: #ff9900;
|
|
23
|
+
--danger: #ff3b3b;
|
|
24
|
+
--font-display: "Press Start 2P", "Arial Black", system-ui, sans-serif;
|
|
25
|
+
--font-body: "Inter", system-ui, sans-serif;
|
|
26
|
+
--font-mono: "Press Start 2P", ui-monospace, monospace;
|
|
27
|
+
--text-xs: 10px;
|
|
28
|
+
--text-sm: 12px;
|
|
29
|
+
--text-base: 14px;
|
|
30
|
+
--text-lg: 16px;
|
|
31
|
+
--text-xl: 20px;
|
|
32
|
+
--text-2xl: 30px;
|
|
33
|
+
--text-3xl: 44px;
|
|
34
|
+
--text-4xl: 64px;
|
|
35
|
+
--leading-body: 1.6;
|
|
36
|
+
--leading-tight: 1.08;
|
|
37
|
+
--tracking-display: 0;
|
|
38
|
+
--space-1: 4px;
|
|
39
|
+
--space-2: 8px;
|
|
40
|
+
--space-3: 12px;
|
|
41
|
+
--space-4: 16px;
|
|
42
|
+
--space-5: 20px;
|
|
43
|
+
--space-6: 24px;
|
|
44
|
+
--space-8: 32px;
|
|
45
|
+
--space-12: 48px;
|
|
46
|
+
--section-y-desktop: 84px;
|
|
47
|
+
--section-y-tablet: 60px;
|
|
48
|
+
--section-y-phone: 44px;
|
|
49
|
+
--radius-sm: 10px;
|
|
50
|
+
--radius-md: 18px;
|
|
51
|
+
--radius-lg: 9999px;
|
|
52
|
+
--radius-pill: 9999px;
|
|
53
|
+
--elev-flat: none;
|
|
54
|
+
--elev-ring: 0 0 0 1px var(--border);
|
|
55
|
+
--elev-raised: 0 0 0 2px #2338ff, 0 22px 60px rgba(0, 0, 0, 0.46);
|
|
56
|
+
--focus-ring: 0 0 0 4px rgba(255, 204, 0, 0.34);
|
|
57
|
+
--motion-fast: 90ms;
|
|
58
|
+
--motion-base: 160ms;
|
|
59
|
+
--ease-standard: cubic-bezier(0.2, 0, 0, 1);
|
|
60
|
+
--container-max: 1080px;
|
|
61
|
+
--container-gutter-desktop: 32px;
|
|
62
|
+
--container-gutter-tablet: 24px;
|
|
63
|
+
--container-gutter-phone: 16px;
|
|
64
|
+
}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
# Design System Inspired by Paper
|
|
2
|
+
|
|
3
|
+
> Category: Retro & Nostalgic
|
|
4
|
+
> Paper-textured, print-inspired design with minimal colors, clean serif/sans typography, and tactile surface qualities.
|
|
5
|
+
|
|
6
|
+
## 1. Visual Theme & Atmosphere
|
|
7
|
+
|
|
8
|
+
Paper-textured, print-inspired design with minimal colors, clean serif/sans typography, and tactile surface qualities.
|
|
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:** `#111111` — 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 (#111111) 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:** 14/16/18/24/32/40
|
|
32
|
+
- **Families:** primary=Roboto, display=Montserrat, mono=PT 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:** 4/8/12/16/24/32
|
|
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 `#111111`; 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 (#111111) 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.
|