toss-style-design-system — Cursor rule for UI design and setup
This Cursor rule guides the agent toward restrained product interfaces with clear hierarchy, grayscale structure, and limited accent color. Use it when editing UI components or styles.
.cursor/rules/toss-style-design-system.mdcWhat toss-style-design-system does
The rule sets expectations for typography, spacing, color, and surfaces. It favors grayscale for most of the interface, reserves one accent for actions and selected states, and keeps cards restrained. For metric displays, the value should stand out while its unit remains easy to read. Pure black text and decorative gradients are ruled out.
It also covers dark mode, WCAG AA contrast, visible focus states, semantic HTML, and reduced-motion preferences. Its file patterns target tsx, jsx, vue, svelte, CSS, SCSS, and tailwind.config.*; alwaysApply is false. So files outside those patterns are not covered by this rule.
What it helps with
- establish a clear type hierarchy for product screens
- keep spacing consistent across interface sections
- restrain card decoration and accent colors
- check dark-mode contrast and visible focus states
Example prompts for the agent
- Apply
toss-style-design-systemto this page and keep the interface mostly grayscale. - Review these cards and metrics against
toss-style-design-system. - Update the dark theme and focus states to follow
toss-style-design-system.
How to install toss-style-design-system
Manually: put the files in place
.cursor/rules/toss-style-design-system.mdcFrontmatter: description, globs, alwaysApply
Manually: put the files in place
.claude/rules/toss-style-design-system.mdThe paths frontmatter field limits the files: move globs from the source into paths
AGENTS.md
Codex reads AGENTS.md: paste the rule text there
Manually: put the files in place
.github/instructions/toss-style-design-system.instructions.mdThe applyTo field sets which files it applies to: move globs from the source into applyTo
Manually: put the files in place
.devin/rules/toss-style-design-system.mdManually: put the files in place
.clinerules/toss-style-design-system.mdStep by step, with commands for each platform: Cursor rules: .mdc files, four modes and what replaced .cursorrules
Questions about toss-style-design-system
How do I install toss-style-design-system in Cursor?
Add the rule file to your project at .cursor/rules/toss-style-design-system.mdc. That is the provided Cursor rule path.
What does toss-style-design-system do?
It guides UI styling across typography, spacing, color, cards, and dark mode. It also sets accessibility expectations, including WCAG AA contrast and visible focus states.
Which files does toss-style-design-system target?
Its patterns cover tsx, jsx, vue, svelte, CSS, SCSS, and tailwind.config.*. The rule is not set to apply globally.
Source text
toss-style-design-system.mdc · CC0-1.0
--- description: Toss-style UI design rules for disciplined spacing, typography, grayscale hierarchy, restrained color, cards, metrics, dark mode, and accessibility globs: ["**/*.tsx", "**/*.jsx", "**/*.vue", "**/*.svelte", "**/*.css", "**/*.scss", "tailwind.config.*"] alwaysApply: false --- # Toss-Style Design System Rules ## Design Direction - Build quiet, high-trust product UI with clear hierarchy, generous spacing, and minimal ornament. - Use one primary accent color and rely on grayscale for most structure. - Avoid decorative gradients, unnecessary shadows, and competing accent colors. - Prioritize readability, confidence, and fast scanning over visual novelty. ## Typography - Use a strict type scale with clear roles for page title, section title, body, supporting text, and metadata. - Use font weight and color before using large size changes. - Never use pure black text; use a dark grayscale foreground. - Keep line height comfortable for body copy and tighter for short labels or metrics. - For metrics, make the number visually dominant and the unit smaller but still legible. ## Layout and Rhythm - Use consistent spacing tokens. - Keep related content close and unrelated content separated by whitespace. - Use section rhythm: summary, details, action, and supporting context. - Align form fields, values, and controls predictably. - Avoid nested cards and excessive borders. ## Cards and Surfaces - Use cards only for grouped content that needs a surface. - Keep card radius restrained and consistent. - Use subtle shadows or borders, not both heavily. - Keep shadow opacity low and avoid dramatic elevation. - Do not place important controls in low-contrast decorative surfaces. ## Color - Use the accent color for primary actions, selected state, links, or critical brand moments. - Use semantic colors for status only: success, warning, error, and information. - Keep disabled and secondary states in grayscale. - Ensure status is never communicated by color alone. ## Dark Mode - Rebuild the grayscale scale for dark mode rather than inverting colors. - Reduce bright accent intensity on dark backgrounds. - Preserve contrast between surface, border, and foreground layers. - Test charts, cards, and form controls in both modes. ## Accessibility - Meet WCAG AA contrast for text and controls. - Provide visible focus states. - Keep tap targets large enough for touch. - Use semantic HTML and labels before adding ARIA. - Respect reduced motion preferences. ## Common Mistakes - Do not create one-off spacing values. - Do not mix multiple unrelated accent colors. - Do not overuse cards to separate every piece of content. - Do not rely on large hero typography inside dense product screens.
© PatrickJS · CC0-1.0 · PatrickJS/awesome-cursorrules