n8n/.claude/plugins/n8n/skills/design-system/SKILL.md

1.8 KiB

name description
n8n:design-system Guidelines on using Design System styles and components. Use when working on .vue files in packages/frontend. Triggers for tasks that include component architecture, styling, UI changes, or feature work.

Design System

Comprehensive guide for building, styling, and using components in the frontend.

When to Apply

Reference these guidelines when:

  • Working on .{vue|css|scss} files in packages/frontend
  • Adding new components to packages/frontend/@n8n/design-system
  • Refactoring styles for Vue components
  • Implementing new UI components or features
  • Reviewing changes to UI

Rules

  • Follow guidelines in packages/frontend/@n8n/design-system/src/styleguide/*.mdx
  • ALWAYS use CSS variables for styles from packages/frontend/@n8n/design-system/src/css/_tokens.scss or packages/frontend/@n8n/design-system/src/css/_primtivies.scss. Use hard-coded values only when no suitable tokens.
  • ALWAYS prefer using existing components from packages/frontend/@n8n/design-system/src/components. Prefer components that aren't marked @deprecated.
  • When reviewing UI changes or adding new components, follow rules/web-interface-guidelines.md
  • Use light-dark() when alternating colors for ligh/dark mode

Examples

  • "Add a modal dialog for confirming workflow deletion" → Use N8nDialog
  • "Add a dropdown to select workflow status" → Use N8nDropdown or N8nSelect
  • "Add button with + icon to add new tiem" → Wrap N8nButton with iconOnly prop with N8nTooltip and wrap in N8nTooltip. Use N8nIcon and proper aria-label.
  • "Add a destructive action button" → use N8nButton with variant="destructive"
  • Make background color white/black → Use var(--background--surface) for white on light mode and "black" on dark mode