Figma → Vue Design System
A Vue 3 component library with automated design token synchronization from Figma.
Figma → Vue Design System
A production-ready Vue 3 component library with automated Figma design token synchronization, comprehensive testing, and Storybook documentation.
✨ Features
- 🎨 Figma Integration: Automated design token sync via MCP Server
- ⚡ Vue 3: Composition API with TypeScript support
- 🎯 Production Ready: Comprehensive testing and CI/CD pipeline
- 📚 Storybook: Interactive component documentation
- ♿ Accessibility: WCAG 2.1 AA compliant with axe-core testing
- 🌙 Dark Mode: Full dark theme support
- 📦 Tree Shaking: Optimized bundle size with ESM exports
- 🔄 Automated Versioning: Changeset-based release management
🚀 Quick Start
Installation
npm install @design-system/vue-components
# or
pnpm add @design-system/vue-components
# or
yarn add @design-system/vue-components
Usage
<template>
<div>
<Button variant="primary" @click="handleClick">
Save Changes
</Button>
</div>
</template>
<script setup>
import { Button } from '@design-system/vue-components'
import '@design-system/vue-components/style.css'
const handleClick = () => {
console.log('Button clicked!')
}
</script>
🏗️ Development
Prerequisites
- Node.js ≥ 20 LTS
- pnpm ≥ 8.0.0
- Figma Desktop App (for design token sync)
Setup
# Clone the repository
git clone https://github.com/boraalapgh/figma-vue-design-system.git
cd figma-vue-design-system
# Install dependencies
pnpm install
# Start Storybook
pnpm storybook
# Run tests
pnpm test
# Build library
pnpm build:lib
📦 Components
Button
Primary UI component with comprehensive variants and accessibility support.
<Button
variant="primary"
size="md"
:disabled="false"
:loading="false"
@click="handleClick"
>
Click me
</Button>
Props:
variant:'primary' | 'secondary' | 'success' | 'warning' | 'danger' | 'ghost'size:'xs' | 'sm' | 'md' | 'lg' | 'xl'disabled:booleanloading:booleanariaLabel:string
🎨 Figma MCP Integration
Setup MCP Server
- Enable in Figma: Open Figma Desktop → Preferences → Enable Dev Mode MCP Server
- Configure Cursor: Add MCP server configuration in Cursor settings
{
"mcpServers": {
"Figma": {
"url": "http://127.0.0.1:3845/sse"
}
}
}
Sync Design Tokens
# Sync tokens from Figma file
pnpm mcp-sync --file YOUR_FIGMA_FILE_KEY --out ./tokens
# This generates:
# - design-tokens.json (CSS variables)
# - components.schema.json (component definitions)
# - changelog-draft.md (proposed changes)
🧪 Testing
- Unit Tests: Component logic and props
- Accessibility Tests: axe-core compliance
- Visual Tests: Storybook test runner
- Keyboard Navigation: Focus management
🚀 Deployment
Vercel (Recommended)
Click the deploy button above or manually deploy:
# Build Storybook
pnpm build:storybook
# Deploy to Vercel
vercel --prod
Built with ❤️ by the Design System Team
Related Servers
Scout Monitoring MCP
sponsorPut performance and error data directly in the hands of your AI assistant.
Alpha Vantage MCP Server
sponsorAccess financial market data: realtime & historical stock, ETF, options, forex, crypto, commodities, fundamentals, technical indicators, & more
MCP Server Boilerplate
A TypeScript boilerplate for building MCP servers with streamable HTTP and OAuth proxy support.
Authless Remote MCP Server on Cloudflare
An example of a remote MCP server deployable on Cloudflare Workers without authentication.
mermaid-mcp-server Public
MCP server for generating Mermaid diagrams from projects (local/GitHub) and rendering via Kroki.
Maya MCP
MCP server for Autodesk Maya
Replicate Imagen 4 MCP Server
Access Google's Imagen 4 Ultra model via the Replicate platform for high-quality image generation.
MCP Github OAuth
An MCP server with built-in GitHub OAuth support, deployable on Cloudflare Workers.
FastAPI with MCP
A FastAPI application demonstrating MCP integration for mathematical operations and tool registration.
AIO-MCP Server
An MCP server with integrations for GitLab, Jira, Confluence, and YouTube, providing AI-powered search and development utility tools.
DevHub
Manage and utilize website content within the DevHub CMS platform
MCPunk
Explore and understand codebases through conversation by breaking files into logical chunks for searching and querying without embeddings.