🔔 Alert..!! Get 2 Month Free Cloud Hosting With $200 Bonus From Digital Ocean ACTIVATE DEAL

A lightweight flowchart editor for Vue.js, code with vanillaJS,

Chart_Graph

Documentation

vue-simple-flowchart

Introduction

a lightweight flowchart editor for Vue.js, code with vanillaJS,

Demo

https://jeffreyrn.github.io/vue-simple-flowchart/demo/

Feature

  • drag to connent two node, click to delete link
  • support add, delete, save node
  • reactive flowchart data

Usage

install via npm/yarn

yarn add vue-simple-flowchart 

import in script

import SimpleFlowchart from 'vue-simple-flowchart'; import 'vue-simple-flowchart/dist/vue-flowchart.css';

register the component, and add below to html:

<simple-flowchart :scene.sync="data"></simple-flowchart>

then set data for flowchart component, for example:

data() {     return {         data: {             centerX: 1024,                 centerY: 140,                 scale: 1,                 nodes: [                     {                         id: 2,                         x: -700,                         y: -69,                         type: 'Action',                         label: 'test1',                     },                     {                         id: 4,                         x: -357,                         y: 80,                         type: 'Script',                         label: 'test2',                     },                     {                         id: 6,                         x: -557,                         y: 80,                         type: 'Rule',                         label: 'test3',                     }                     ],                     links: [                     {                         id: 3,                         from: 2, // node id the link start                         to: 4,  // node id the link end                     }                 ]         },     }; }

Component

Attributes

  • height, type: Number, default: 400

Events

  • nodeClick, emit when node click, event = nodeID
  • nodeDelete: emit when node deleted, event = nodeID
  • linkBreak: emit when the selected link deleted, event = {id, from, to} (deleted link Object)
  • linkAdded: emit when new link added, event = {id, from, to} (new link Object)
  • canvasClick: emit when canvas click, event = { (Event Object) }

Project setup

yarn install 

Compiles and hot-reloads for development

yarn run serve 

Compiles and minifies for production

yarn run build 

Lints and fixes files

yarn run lint 

TODO

  • Add horizontal mode
  • Optimizition for large node array
  • Theme color configurable
  • Remove Console.log in build mode

You May Also Like