← ClaudeAtlas

design-languagelisted

ShipIt design language: color tokens, typography, iconography, motion, and multi-theme architecture. Load when working on UI components, styling, theming, or adding new visual elements.
nikzlabs/shipit · ★ 5 · Web & Frontend · score 73
Install: claude install-skill nikzlabs/shipit
# Design Language ShipIt uses semantic design tokens (CSS custom properties) for all colors. Themes are token overrides applied via a class on `<html>`. All UI code references tokens — never raw Tailwind color classes. Concrete color values live in per-theme CSS files under `src/client/themes/`. Each file defines one theme's token values. `src/client/index.css` imports them and contains shared rules (animations, scrollbars, syntax highlighting). Theme state is managed by `useTheme()` in `src/client/hooks/useTheme.ts` (persisted to `localStorage` key `shipit-theme`). ``` src/client/themes/ light.css ← :root { --color-bg-primary: ...; } dark.css ← .dark { --color-bg-primary: ...; } ``` To add a new theme: create a new CSS file in `themes/`, import it in `index.css`, register the name in `useTheme()`. No component changes needed. ## Color Tokens Never use raw Tailwind color classes like `bg-gray-950` or `text-blue-500` in components — use `bg-[var(--color-bg-primary)]`. | Token | Purpose | |-------|---------| | `--color-bg-primary` | Page/app background | | `--color-bg-secondary` | Sidebar, secondary panels | | `--color-bg-tertiary` | Cards, inputs, code blocks | | `--color-bg-elevated` | Dropdowns, modals, popovers | | `--color-bg-overlay` | Backdrop behind modals | | `--color-bg-hover` | Hover state for interactive surfaces | | `--color-bg-active` | Active/pressed state | | `--color-text-primary` | Body text, headings | | `--color-text-secondary` | Desc