Skip to content
cccskills
FreePublished on GitHub

atomic-design

Build an Atomic Design system from Figma style guides - extract tokens, create atoms/molecules/organisms/templates/pages as reusable component libraries. Use when building or extending a design system or component library.

The English summary is being prepared. Showing the original description.

Works withFigma
See how to install

Files included (19)

  • SKILL.md5.8 KB
  • references/atomic-hierarchy.extended.md15.7 KB
  • references/atomic-hierarchy.md4.2 KB
  • references/component-templates.extended.md22.8 KB
  • references/component-templates.md7.8 KB
  • references/design-deviation-rules.extended.md11.9 KB
  • references/design-deviation-rules.md3.4 KB
  • references/figma-design-fidelity.extended.md12.0 KB
  • references/figma-design-fidelity.md3.1 KB
  • references/figma-mcp-integration.extended.md18.6 KB
  • references/figma-mcp-integration.md3.4 KB
  • references/responsive-patterns.extended.md14.0 KB
  • references/responsive-patterns.md4.6 KB
  • SKILL.extended.md14.8 KB
  • tokens/breakpoints.json659 B
  • tokens/colors.json1.6 KB
  • tokens/components.json3.1 KB
  • tokens/spacing.json1.4 KB
  • tokens/typography.json1.8 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

Atomic Design System

When to Use

TriggerAction
Create a componentExtract from Figma -> Build
Style elementCheck Figma specs -> Apply
Extract tokensUse this skill
Build page/form/layoutSwitch to atomic-page-builder

Critical Rule: Figma Is Source of Truth

Extract and implement from Figma exactly. Never guess design values.

  1. EXTRACT FROM FIGMA (mandatory) - Figma MCP: get_code_connect_map / get_node. Copy colors, spacing, typography, effects. Document ALL extracted values.
  2. COMPARE WITH EXISTING - check current tokens/*.json. If Figma differs -> UPDATE tokens (Figma wins always).
  3. IMPLEMENT EXACTLY - match Figma specs 1:1. No rounding, no improvements, no creative freedom.

Zero Deviation Policy

ForbiddenCorrect
Round 13px to 12pxUse exact 13px
Change #3B82F6 to #3F85F7Use exact #3B82F6
Add shadow not in FigmaNo shadow if not designed
Improve spacingExact spacing from Figma

Figma MCP Commands

figma.get_node(file_key, node_id)        // Get component specs
figma.get_code_connect_map(file_key, node_id)  // Get code snippets
figma.get_styles(file_key, style_type)   // Get styles
figma.get_local_variables(file_key)      // Get design tokens

Design Tokens

NeedFileKey Values
Colorstokens/colors.jsonsemantic.primary, semantic.error
Typographytokens/typography.jsonsemantic.heading-1, semantic.body
Spacingtokens/spacing.jsonsemantic.component-padding
Componentstokens/components.jsonbutton.variants, input.states
Breakpointstokens/breakpoints.jsonmd: 768px, lg: 1024px

Use semantic token names, never primitives:

color: var(--color-primary);              /* DO */
padding: var(--spacing-component-padding);/* DO */
color: var(--blue-500);  /* Wrong - primitive */
padding: 16px;           /* Wrong - hardcoded */

Atomic Hierarchy

PAGES      -> Dashboard, Settings, UserProfile
TEMPLATES  -> DashboardLayout, AuthLayout
ORGANISMS  -> Header, Sidebar, Form, DataTable
MOLECULES  -> FormField, SearchBar, Card, NavItem
ATOMS      -> Button, Input, Typography, Icon
TOKENS     -> colors, typography, spacing (FROM FIGMA)
LevelRuleExample
AtomUses ONLY tokensButton uses color/spacing tokens
MoleculeCombines 2+ AtomsFormField = Label + Input + ErrorText
OrganismCombines Molecules + AtomsHeader = Logo + NavItems + UserMenu
TemplateLayout structure, no contentDashboardLayout
PageTemplate + real contentDashboard

Core Rules

1. Props = Content/Behavior Only

// Correct
interface ButtonProps {
  children: ReactNode;
  onClick: () => void;
  variant?: 'primary' | 'secondary';
  disabled?: boolean;
}
// Wrong - visual props exposed
interface ButtonProps {
  backgroundColor?: string;  // NO
  fontSize?: string;         // NO
}

2. All Styles Encapsulated

.button {
  background: var(--color-primary);
  padding: var(--spacing-button-padding-y) var(--spacing-button-padding-x);
  font-size: var(--font-size-button);
}

3. Responsive Built-In

.card { padding: var(--spacing-4); }  /* Mobile */
@media (min-width: 768px) { .card { padding: var(--spacing-6); } }  /* Tablet */
@media (min-width: 1024px) { .card { padding: var(--spacing-8); } } /* Desktop */

4. Accessibility Required

<button
  aria-label={iconOnly ? label : undefined}
  aria-busy={loading}
  aria-disabled={disabled}
>

Workflow: Create New Component

Step 0: Extract from Figma (mandatory)

  1. Open Figma Dev Mode (Shift+D)
  2. Select component
  3. Extract: dimensions, padding, colors, typography, effects, border radius
  4. Document ALL extracted values
  5. Compare with existing tokens
  6. Update tokens if Figma differs

Step 1: Classify Level

Is component breakable into smaller parts?
  No  -> ATOM
  Yes -> What does it compose?
    Only Atoms      -> MOLECULE
    Molecules+Atoms -> ORGANISM

Step 2: Create Files

src/design-system/atoms/Button/
  Button.tsx          # Component + Props
  Button.module.css   # All styles (tokens only)
  Button.test.tsx     # Tests
  index.ts            # Export

Step 3: Implement Pattern

Head every component file with the Figma provenance comment:

/**
 * @figma https://figma.com/file/xxx/Design-System?node-id=123
 * @extracted 2024-01-15
 * All values from Figma - DO NOT MODIFY without designer approval.
 */

Props: content/behavior only, e.g. variant?: 'primary' | 'secondary' | 'ghost' | 'danger', size?: 'sm' | 'md' | 'lg', disabled?, onClick?, children. Styles come from ./Button.module.css via clsx(styles.button, styles[variant], styles[size]). Full template: references/component-templates.md

Checklist Before Delivery

  • Specs extracted from Figma (not guessed)
  • Tokens updated if Figma values differ
  • NO values rounded or improved
  • Visual comparison shows 0% difference from Figma
  • Correct atomic level
  • Uses ONLY semantic tokens
  • Props are content/behavior only
  • Responsive at all breakpoints
  • TypeScript interfaces complete
  • Accessibility attributes
  • Figma link documented

References

FileWhen to Read
tokens/*.jsonNeed specific token values
references/figma-design-fidelity.mdFigma extraction guide
references/design-deviation-rules.mdZero deviation policy
references/atomic-hierarchy.mdComponent examples
references/component-templates.mdCopy-paste templates
references/responsive-patterns.mdResponsive patterns

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

AID Phase 4 - Development phase. Use for implementing features, TDD practices, code reviews, transitioning from planning to QA.

The English summary is being prepared. Showing the original description.

ilandahan/AID10Updated Sep 23, 2026

AID Phase 0 - Research & discovery. Use for validating problem spaces, identifying stakeholders, defining success metrics, deciding whether to proceed.

The English summary is being prepared. Showing the original description.

ilandahan/AID10Updated Sep 23, 2026

AID Phase 3 - Implementation Planning with consolidation-first approach. Resolves contradictions between PRD and Tech Spec, creates consolidated master document, then breaks down into actionable tasks and populates Jira. Includes sprint planning and risk assessment.

The English summary is being prepared. Showing the original description.

ilandahan/AID10Updated Sep 23, 2026

AID Phase 1 - PRD creation. Use for user stories, acceptance criteria, scoping features, transitioning from discovery to tech spec.

The English summary is being prepared. Showing the original description.

ilandahan/AID10Updated Sep 23, 2026

AID Phase 5 - QA and Release. Use for validating implementations, acceptance tests, preparing releases, deployment, operational readiness.

The English summary is being prepared. Showing the original description.

ilandahan/AID10Updated Sep 23, 2026

AID Phase 2 - Technical Specification. Use for system architecture, API contracts, data models, security architecture, transitioning from PRD to implementation.

The English summary is being prepared. Showing the original description.

ilandahan/AID10Updated Sep 23, 2026

See all skills by ilandahan

Report a problem with this skill