MCPInstall

syncfusion-vue-diagram

Build interactive diagrams using Syncfusion Vue Diagram, including flowcharts, BPMN workflows, UML diagrams, Entity Relationship (ER) diagrams, swimlanes, and organizational charts. Trigger when working with Vue diagram components such as nodes, connectors, shapes, ports, labels, layouts, symbol palettes, serialization/deserialization with unsaved changes detection, Mermaid syntax support, data binding, interactive editing, and exporting diagrams for visualization and process flows.

Installs
63
Last 24h
—
Trending rank
—
Security
Not audited

Install

Works with every agent the skills CLI supports.

npx skills add https://github.com/syncfusion/vue-ui-components-skills --skill syncfusion-vue-diagram
  1. 01

    Install

    Run the command in your project. The CLI asks which agents to install for.

  2. 02

    Describe the task

    Ask your agent for something this skill covers. It loads syncfusion-vue-diagram automatically when relevant.

  3. 03

    Review the result

    The agent follows the SKILL.md steps, scripts and references bundled with the skill.

SKILL.md

The instructions your agent reads when the skill is triggered.

Implementing Diagrams with Syncfusion Vue

The Syncfusion Vue Diagram component enables you to create interactive, customizable diagrams for visualizing complex processes, organizational hierarchies, workflows, and data relationships. From simple flowcharts to advanced BPMN diagrams and UML representations, the Diagram component provides comprehensive tools for visual communication.

When to Use This Skill

  • Flowcharts & Process Diagrams — Visualize workflows, decision trees, or procedural flows
  • Organizational Charts — Represent hierarchical structures with automatic layouts
  • BPMN Workflows — Design business process models with activities, gateways, and events
  • UML Diagrams — Create class diagrams, sequence diagrams, and structured relationships
  • Mind Maps & Radial Trees — Organize ideas and concepts hierarchically
  • Swimlane Diagrams — Show processes across multiple actors or departments
  • Custom Shapes & Connectors — Build tailored diagrams with styled nodes and labeled connections
  • Interactive Visualization — Enable drag-drop, selection, pan/zoom, and user interaction

Navigation Guide

Getting Started

📄 Read: references/getting-started.md

  • Installation and npm packages (Vue 2/3/Next.js/Preact)
  • Project setup with Vite/CRA
  • CSS imports and theme configuration
  • Basic DiagramComponent usage
  • Module injection basics

Core Elements: Nodes

📄 Read: references/nodes.md

  • Creating and adding nodes to diagrams
  • Node positioning (offsetX/Y, width/height)
  • Node shape types (Flow, Basic, Path)
  • Styling nodes (fill, stroke, opacity, shadows)
  • Node customization and templates
  • Expand/collapse functionality
  • Node events and callbacks

Core Elements: Connectors

📄 Read: references/connectors.md

  • Connector types (Straight, Orthogonal, Bezier)
  • Segment configuration and routing
  • Connecting nodes via sourceID/targetID
  • Advanced segments and bezier curves
  • Connector customization and styling
  • Connector events and interaction

Annotations: Labels & Text

📄 Read: references/labels-and-annotations.md

  • Adding labels to nodes and connectors
  • Label styling (font, color, alignment, rotation)
  • Label interaction (edit, drag, resize)
  • Label positioning and offset
  • Label events

Connection Points: Ports

📄 Read: references/ports.md

  • Port types and connection points on nodes
  • Port positioning and visibility
  • Port appearance and styling
  • Connecting connectors to specific ports
  • Port interaction and events

Shapes & Visual Styling

📄 Read: references/shapes-and-styles.md

  • Built-in shape types (Flow, Basic, Path, Image, HTML)
  • Flow chart shape reference
  • Style properties (fill, stroke, dash, shadow)
  • CSS class customization
  • Theme integration

BPMN Diagrams

📄 Read: references/bpmn-diagrams.md

  • BPMN module injection and setup
  • BPMN shape overview and types
  • Activities (task, subprocess, expanded subprocess)
  • Events (start, end, intermediate)
  • Gateways (exclusive, parallel, inclusive)
  • Flows (sequence, message, association)
  • Data objects and data sources
  • Groups and text annotations

UML Diagrams

📄 Read: references/uml-diagrams.md

  • UML class diagrams
  • Classifier shapes (class, interface, enumeration)
  • UML relationships and associations
  • UML sequence diagram elements and participants
  • Participant stereotypes (Actor, Boundary, Control, Entity, Database, Default)
  • Message types (Synchronous, Asynchronous, Reply, Create, Delete, Self)
  • Activation boxes and lifelines
  • Complete workflow examples

Entity Relationship Diagrams

📄 Read: references/implementing-entity-relationship-diagrams.md

  • Entity Relationship (ER) diagram concepts and models
  • ER shape configuration with fields and properties
  • Field constraints (NotNull, Unique, Primary Key, Foreign Key)
  • Relationship types and multiplicities (One, OneAndOnlyOne, Many, ZeroOrOne, OneOrMany, ZeroOrMany)
  • ER connectors and relationship configuration
  • Runtime field management and manipulation

Automatic Layouts

📄 Read: references/layouts.md

  • Hierarchical tree layout
  • Organizational chart layout
  • Mindmap layout
  • Radial tree layout
  • Flowchart layout
  • Complex hierarchical configurations
  • Layout customization and spacing
  • Layout events and callbacks

Swimlanes & Phases

📄 Read: references/swimlanes.md

  • Swimlane structure and overview
  • Creating lanes and phases
  • Swimlane children and header configuration
  • Swimlane palette
  • Swimlane interaction

Grouping & Containers

📄 Read: references/groups-and-containers.md

  • Grouping nodes together
  • Group operations (add/remove children)
  • Container nodes and nesting
  • Padding and layout within containers

Symbol Palette

📄 Read: references/symbol-palette.md

  • SymbolPaletteComponent setup
  • Defining palette symbols
  • Drag & drop to diagram
  • Palette customization (icons, search, size)
  • Palette events and interactions

Data Binding

📄 Read: references/data-binding.md

  • DataManager and dataSourceSettings
  • id/parentId mapping for hierarchies
  • Rendering org-charts from JSON data
  • Remote data via DataManager (OData/Web API/REST)
  • setNodeTemplate for data-driven rendering

Interaction & Tools

📄 Read: references/interaction-and-tools.md

  • Selection, drag, resize interactions
  • Tool modes (pointer, draw, pan)
  • Constraints (node, connector, diagram)
  • Commands and keyboard shortcuts
  • Undo/Redo functionality
  • Context menus
  • User handles

Serialization & Export

📄 Read: references/serialization-and-export.md

  • Save/load diagrams as JSON
  • Export to image (PNG, SVG, JPG) — use exportDiagram (inject PrintAndExport)
  • Print functionality
  • Visio file import/export (experimental; inject ImportAndExportVisio)
  • Mermaid syntax support with saveDiagramAsMermaid() and loadDiagramFromMermaid()
  • Change detection with isModified property for unsaved changes tracking
  • EJ1 migration serialization

Diagram Settings & Configuration

📄 Read: references/diagram-settings.md

  • Layers (add, lock, visibility, selection)
  • Virtualization (performance optimization)
  • Grid lines (snapping, dots/lines)
  • Ruler (horizontal/vertical)
  • Scroll settings
  • Page settings (size, orientation, margins)
  • Tooltip configuration
  • Overview panel
  • Localization and accessibility

Quick Start

<template>
  <div id="app">
    <ejs-diagram 
      id="diagram"
      :width="width"
      :height="height"
      :nodes="nodes"
      :connectors="connectors"
      :snapSettings="snapSettings"
    ></ejs-diagram>
</div>
</template>
<script>
import { DiagramComponent,SnapConstraints } from '@syncfusion/ej2-vue-diagrams';
export default {
  name: "App",
  components: {
      "ejs-diagram": DiagramComponent
  },
  data() {
      return {
          width: "100%",
          height: "590px",
          nodes: [
            {
              id: 'node1',
              width: 100,
              height: 100,
              offsetX: 250,
              offsetY: 250,
              style: { fill: '#6BA3D5' },
              annotations: [{ content: 'Node 1' }]
            },
            {
              id: 'node2',
              width: 100,
              height: 100,
              offsetX: 450,
              offsetY: 250,
              style: { fill: '#6BA3D5' },
              annotations: [{ content: 'Node 2' }]
            }
          ],
          connectors: [
            {
              id: 'connector1',
              sourceID: 'node1',
              targetID: 'node2',
              type: 'Orthogonal'
            }
          ],
          snapSettings: {
            constraints: SnapConstraints.None
          }
      }
    }
}
</script>

<style>
@import '../node_modules/@syncfusion/ej2-vue-diagrams/styles/material.css';
</style>

Vue 2 vs Vue 3 Decision Guide

⚠️ CRITICAL: Syncfusion Diagram works with both Vue 2 and Vue 3, but patterns differ significantly.

Quick Decision Tree

┌─ Do you have an existing Vue project?
│
├─ YES, it's Vue 3 (Vite, create-vue, etc.)
│  └─ Use: Composition API with <script setup>
│     ✅ Modern, performant, recommended
│     📄 Read: getting-started.md (Vue 3 Composition API section)
│
├─ YES, it's Vue 2 (Vue CLI, legacy projects)
│  └─ Use: Options API with export default
│     ✅ Compatible, but consider migrating
│     📄 Read: getting-started.md (Vue 2 section)
│
└─ NO, starting fresh
   └─ Recommended: Vue 3 with Vite
      ✅ Fastest, most modern
      📄 Read: getting-started.md (Vite + Vue 3 setup)

Version Signatures

Vue 3 Composition API (Recommended):

import { ref } from 'vue';
import { DiagramComponent } from '@syncfusion/ej2-vue-diagrams';

const nodes = ref([...]);  // ← Use ref()

Vue 2 Options API:

import { DiagramComponent } from '@syncfusion/ej2-vue-diagrams';

export default {
  data() {
    return {
      nodes: [...]  // ← Use data()
    }
  }
}

⚡ Pro Tip: If you're unsure, default to Vue 3 Composition API—it's the industry standard for new Syncfusion projects.

Common Patterns

Pattern 1: Creating Flowchart with Auto Layout

// Use hierarchical layout with nodes and connectors
const layout = {
  type: 'HierarchicalTree',
  orientation: 'TopToBottom',
  horizontalSpacing: 50,
  verticalSpacing: 50,
  getLayoutInfo: (node, options) => {
    // Customize layout per node
  }
};
diagram.layout = layout;
diagram.doLayout();

Pattern 2: Data-Driven Organization Chart

// Render org chart from JSON data with DataManager
const dataSettings = {
  id: 'id',
  parentId: 'manager',
  dataSource: new DataManager(employeeData)
};
diagram.dataSourceSettings = dataSettings;

Pattern 3: Interactive Node Selection

// Handle node selection events
diagram.selectionChange = (args) => {
  console.log('Selected:', args.newItems);
};

// In Vue: bind the selectionChange event and read newValue/oldValue
// <ejs-Diagram :selectionChange="onSelectionChange" ... />
const onSelectionChange = (args) => {
  console.log('Selected:', args.newItems);
};

Pattern 4: Export & Persistence (Advanced)

// Save state and export
const jsonData = diagram.saveDiagram();
localStorage.setItem('diagram', jsonData);

// Later: Load from storage
const saved = localStorage.getItem('diagram');
diagram.loadDiagram(saved);

// Export as PNG
diagram.export({ format: 'PNG', fileName: 'diagram' });

Key Props

PropTypePurpose
nodesArrayCollection of diagram nodes
connectorsArrayCollection of connectors linking nodes
layoutObjectAutomatic layout configuration
dataSourceSettingsObjectData binding and source configuration
snapSettingsObjectSnap constraints and guidelines
pageSettingsObjectPage size, orientation, margins
scrollSettingsObjectPan and scroll behavior
constraintsObjectDiagram-level interaction constraints
contextMenuSettingsObjectRight-click menu configuration
undoRedoSettingsObjectUndo/redo behavior

Related Skills

  • BPMN process modeling with Syncfusion workflows
  • Data visualization layouts and hierarchies
  • Interactive flowchart design

FAQ

What does the syncfusion-vue-diagram skill do?

Build interactive diagrams using Syncfusion Vue Diagram, including flowcharts, BPMN workflows, UML diagrams, Entity Relationship (ER) diagrams, swimlanes, and organizational charts. Trigger when working with Vue diagram components such as nodes, connectors, shapes, ports, labels, layouts, symbol palettes, serialization/deserialization with unsaved changes detection, Mermaid syntax support, data binding, interactive editing, and exporting diagrams for visualization and process flows.

How do I install syncfusion-vue-diagram?

Run npx skills add https://github.com/syncfusion/vue-ui-components-skills --skill syncfusion-vue-diagram in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/syncfusion-vue-diagram/ (personal) or .claude/skills/syncfusion-vue-diagram/ (project).

Which AI agents can use syncfusion-vue-diagram?

Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.

Is syncfusion-vue-diagram safe to install?

No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.

Who maintains syncfusion-vue-diagram?

It is published by syncfusion in syncfusion/vue-ui-components-skills. It has 63 recorded installs.

More from syncfusion/vue-ui-components-skills

View all →

syncfusion-vue-scheduler

syncfusion/vue-ui-components-skills

Implement event scheduling, calendar views, and appointment management using Syncfusion Vue Scheduler component. Use this skill when working with calendars, event scheduling, appointment booking systems, resource management, timeline views, recurring events, drag-and-drop event handling, or any scenario involving time-based event visualization and management in Vue applications. Trigger for scheduler implementations, calendar integrations, booking systems, meeting planners, task schedulers, or resource allocation tools.

syncfusion-vue-grid

syncfusion/vue-ui-components-skills

Implements Syncfusion Vue Grid component for feature-rich data tables and grids. Use this when working with data display, sorting, filtering, grouping, aggregates, editing, or exporting. This skill covers grid configuration, CRUD operations, virtual scrolling or infinite scrolling, hierarchy grids, state persistence, and advanced data management features for data-intensive applications.

syncfusion-vue-rich-text-editor

syncfusion/vue-ui-components-skills

Implements the Syncfusion Vue Rich Text Editor (ejs-richtexteditor) supporting both HTML (WYSIWYG) and Markdown editing modes via the editorMode API from @syncfusion/ej2-vue-richtexteditor. Use this skill for toolbar customization, image upload, paste cleanup, inline editing, AI assistant integration, slash menu, emoji picker, and mention support in Vue applications.

syncfusion-vue-blockeditor

syncfusion/vue-ui-components-skills

Implement Syncfusion Vue BlockEditor component for block-based content editing with rich text, images, tables, and interactive blocks. Use this skill ALWAYS when user needs block editor, notion-style editor, content blocks, rich text blocks, document editor with blocks, modular content editor, or mentions @syncfusion/ej2-vue-blockeditor, BlockEditor, block-based editing, content management editor, collaborative editing, real-time collaboration. Covers all 14 block types, 5 content types, drag-and-drop, menus, methods, events, real-time collaborative editing with Yjs support, user presence and remote cursors, version history, and Composition API patterns.

syncfusion-vue-gantt-chart

syncfusion/vue-ui-components-skills

Open the skill to read its SKILL.md instructions.

syncfusion-vue-barcode

syncfusion/vue-ui-components-skills

Open the skill to read its SKILL.md instructions.

Popular frontend & design skills

View category →

setup-matt-pocock-skills

mattpocock/skills

Configure this repo for the engineering skills: set up its issue tracker, triage label vocabulary, and domain doc layout. Run once before first use of the other engineering skills.

Frontend & Design1.1M installs

frontend-design

anthropics/skills

Guidance for distinctive, intentional visual design when building new UI or reshaping an existing one. Helps with aesthetic direction, typography, and making choices that don't read as templated defaults.

OfficialFrontend & Design1M installs

hyperframes-animation

heygen-com/hyperframes

All animation knowledge for HyperFrames — atomic motion rules, multi-phase scene blueprints, scene transitions, broader motion-design techniques, AND the seven runtime adapters (GSAP default, plus Lottie, Three.js, Anime.js, CSS keyframes, Web Animations API, TypeGPU). Use for any motion or animation task: pick 2-4 rules and compose, or load a blueprint, or look up runtime-specific API (e.g. GSAP eases / Lottie player / Three.js mixer). Also covers auditing an existing composition's choreography (animation map) and 24 named text-animation effects. HyperFrames-native: single paused timeline, seek-safe, deterministic.

prototype

mattpocock/skills

Build a throwaway prototype to answer a design question. Use when the user wants to sanity-check whether a state model or logic feels right, or explore what a UI should look like.

Frontend & Design999.2K installs

hyperframes-core

heygen-com/hyperframes

The HyperFrames composition contract — build one renderable project. Use for composition structure, the data- timing attributes, class="clip", tracks, sub-compositions, variables, framework-owned media playback, deterministic-render rules, and validation. Read before writing composition HTML.

Frontend & Design930.5K installs

vercel-react-best-practices

vercel-labs/agent-skills

React and Next.js performance optimization guidelines from Vercel Engineering. This skill should be used when writing, reviewing, or refactoring React/Next.js code to ensure optimal performance patterns. Triggers on tasks involving React components, Next.js pages, data fetching, bundle optimization, or performance improvements.

OfficialFrontend & Design843.1K installs