skills/windows-3-1-web-designer/SKILL.md
Expert in authentic Windows 3.1 aesthetic for modern web applications. Creates pixel-perfect retro UI with beveled borders, system gray palettes, and program manager styling. Activate on 'windows 3.1', 'retro ui', 'beveled borders', 'win31', 'program manager', '90s aesthetic'. NOT for vaporwave (neon gradients), glassmorphism, macOS/iOS styling, flat design, or material design.
npx skillsauth add curiositech/windags-skills windows-3-1-web-designerInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Expert in authentic Windows 3.1 aesthetic for modern web applications. Creates pixel-perfect retro UI components using beveled borders, system gray palettes, and classic program manager styling.
Use for:
Do NOT use for:
| Color | Hex | Usage | |-------|-----|-------| | System Gray | #c0c0c0 | THE primary background | | Dark Gray | #808080 | Shadows, pressed states | | Navy | #000080 | Title bar background | | Teal | #008080 | Links, highlights | | White | #ffffff | Beveled highlights, inputs | | Black | #000000 | Beveled shadows, borders |
OUTSET (Raised) - Buttons, toolbars:
INSET (Sunken) - Text fields, content areas:
| Element | Background | Border Pattern | |---------|------------|----------------| | Window | #c0c0c0 | 3px solid black, inset bevel | | Titlebar | #000080 | none | | Button (up) | #c0c0c0 | inset white TL, black BR | | Button (down) | #c0c0c0 | inset black TL, white BR | | Input | #ffffff | inset 2px dark-gray | | Panel (raised) | #c0c0c0 | outset 2px | | Panel (inset) | #ffffff | inset 2px + shadow |
What it looks like: linear-gradient(#00d4ff, #ff00ff)
Why wrong: Win31 has NO gradients—only solid colors
Instead: Solid var(--win31-teal) or var(--win31-navy)
What it looks like: #00d4ff, #ff00ff (bright neons) Why wrong: This is vaporwave, not Win31 Instead: Muted palette: teal (#008080), navy (#000080)
What it looks like: border-radius: 8px
Why wrong: Win31 has sharp 90° corners everywhere
Instead: No border-radius (or 0)
What it looks like: backdrop-filter: blur(10px), soft shadows
Why wrong: Win31 has no blur—only hard-edge bevels
Instead: Sharp bevel shadows with no blur
What it looks like: #1a1a2e, #16213e dark backgrounds Why wrong: Win31 is light—system gray everywhere Instead: #c0c0c0 system gray base
If your component has:
It should have:
For authentic Win31 feel:
README.TXT, INSTALL.EXEPROGRAM.EXE, CONFIG.SYS| MCP | Purpose | |-----|---------| | 21st Century Dev | Scaffold base components, then override with Win31 CSS | | Component Refiner | Convert modern components to retro aesthetic |
references/design-system.md - Complete color palette, typography, beveled border patternsreferences/component-patterns.md - Full CSS for windows, buttons, forms, panelsreferences/anti-patterns.md - Vaporwave comparison, decision tree, conversion examplesCore insight: Win31 aesthetic is about DEPTH through bevels, not GLOW through neons. System gray is your canvas—beveled borders create the illusion of 3D.
Use with: vaporwave-glassomorphic-ui-designer (different aesthetic) | web-design-expert (modern designs)
data-ai
license: Apache-2.0 NOT for unrelated tasks outside this domain.
development
Use when designing caching strategies (cache-aside, write-through, write-behind), implementing distributed locks, building rate limiters, leaderboards, real-time streams (XADD/consumer groups), pub/sub, or tuning eviction policies. Triggers: thundering-herd on cache miss, dogpile on key expiry, Redlock vs SET-NX-PX choice, sliding-window rate limiter, hot-key on a single cluster slot, big-key blowup, MULTI/EXEC across slots, KEYS in production. NOT for Redis Cluster operations/admin (different domain), embedded KV (SQLite, leveldb), in-process LRU caches, or Memcached.
tools
Drawing the `'use client'` boundary correctly in React Server Components apps (Next.js App Router, RSC frameworks) — leaf-pushing, slot composition, serialization rules, and environment poisoning prevention. Grounded in react.dev and Next.js 16 docs.
development
Use when designing rate limiting for an API, choosing between token bucket / sliding window / leaky bucket / fixed window, implementing it in Redis, deciding edge (Cloudflare/Upstash) vs origin enforcement, sizing per-user vs per-IP vs per-endpoint quotas, returning the right 429 response with Retry-After, or fixing the boundary-burst bug in fixed-window limiters. Triggers: 429 too many requests, INCR + EXPIRE, ZADD + ZREMRANGEBYSCORE + ZCARD, X-RateLimit-Remaining header, Cloudflare WAF rate limiting rules, Upstash @upstash/ratelimit, leaky bucket shaping vs policing, distributed rate limiter consistency. NOT for DDoS mitigation specifically (different scale), CAPTCHA / bot management, full WAF design, or per-user quota billing.