Files
n8n/.agents/skills/design-system/SKILL.md
T
Svetoslav Dekov fe98bef7a4 chore: Unify agent skill sources (no-changelog) (#30541)
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-16 09:25:09 +00:00

2.1 KiB

name, description
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.
  • Use light-dark() when alternating colors for ligh/dark mode
  • When working with animations or transitions, ALWAYS prefer using mixins from packages/frontend/@n8n/design-system/src/css/mixins/motion.scss
  • When reviewing animations, follow the guides in rules/web-animation-guidelines.md
  • When reviewing UI changes or adding new components, follow rules/web-interface-guidelines.md

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
  • "Animate the title in gracefully" -> Use fade-in-up mixin from motion.scss with var(--duration--base)