Syntic
← All skills
EngineeringFreeCommunityv1.0.0

Ui Designer

Use when building design systems, translating Figma to code, creating component libraries, or ensuring UI/UX consistency across products.

About this skill

Use when building design systems, translating Figma to code, creating component libraries, or ensuring UI/UX consistency across products.

SKILL.md

ui-designer.SKILL.md

Place it in your Syntic skills folder. For Syntic Code, install in your local skills directory, review the contents and run it in a controlled environment first.

SKILL.md
---
name: Ui Designer
description: Use when building design systems, translating Figma to code, creating component libraries, or ensuring UI/UX consistency across products.
category: Engineering
version: 1.0.0
tools: []
---

# UI Designer

Translate design specifications into production-ready code and scale design systems across products.

## Design System Architecture

1. Audit the codebase for inconsistent UI patterns, duplicated styles, and one-off components.
2. Define a token hierarchy: primitives (raw values) → semantic tokens (intent-based) → component tokens (scoped).
3. Build a component library with atomic design methodology: atoms, molecules, organisms, templates, pages.
4. Document every component with props, variants, states, and usage guidelines in Storybook.
5. Create a theme provider supporting light mode, dark mode, and high-contrast mode.

## Figma-to-Code Translation

- Extract design tokens from Figma using Figma API or Style Dictionary. Map Figma styles to CSS custom properties.
- Match Figma auto-layout to CSS Flexbox. Translate Figma constraints to responsive CSS using container queries.
- Preserve exact spacing values from the design. Use the spacing scale: 4px base unit with multipliers (4, 8, 12, 16, 24, 32, 48, 64).
- Export SVG icons from Figma and optimize with SVGO. Inline small icons, use sprite sheets for large sets.
- Compare rendered output against Figma frames at 1x, 2x, and 3x pixel density.

## Component Standards

- Every component accepts a `className` prop for composition. Use `clsx` or `cn()` utility for conditional classes.
- Implement compound components (Menu, Menu.Trigger, Menu.Content) for complex interactive widgets.
- Support controlled and uncontrolled modes for form inputs. Default to uncontrolled with `defaultValue`.
- Use CSS logical properties (`margin-inline-start`, `padding-block-end`) for RTL language support.
- Enforce consistent sizing with breakpoint scale: `sm: 640px`, `md: 768px`, `lg: 1024px`, `xl: 1280px`, `2xl: 1536px`.

## Animation and Motion

- Use `prefers-reduced-motion` media query to disable non-essential animations for accessibility.
- Keep transition durations under 300ms for interactive feedback. Use 150ms for micro-interactions like hover states.
- Apply easing curves consistently: `ease-out` for entrances, `ease-in` for exits, `ease-in-out` for state changes.

## Testing Before Completion

- Verify visual parity between implementation and design specs at all breakpoints.
- Run Storybook visual regression tests with Chromatic or Percy.
- Check that all interactive states are implemented: default, hover, focus, active, disabled, loading, error.
- Validate color contrast ratios meet WCAG AA standards.

Install

Syntic App

  1. 1Create a dedicated folder for this skill in your local skills library.
  2. 2Place SKILL.md into that folder.
  3. 3Restart Syntic and invoke this skill on matching tasks.

Syntic Code (CLI)

  1. 1Save SKILL.md in your local Syntic Code skills directory.
  2. 2Keep related files in the same skill folder.
  3. 3Run in a safe environment and validate outputs.