vcf-svg | Vaadin

Web component for manipulating and animating SVG.


Gitter npm version Published on Vaadin Directory

Web Component for manipulating and animating SVG.

  • Web Component wrapper for the JS library SVG.js.
  • Zoom and pan functionality implemented with d3-zoom.
  • Draggable functionality implemented with plugin svg.draggable.js.

Live demo ↗ | API documentation ↗


Install vcf-svg:

npm i @vaadin-component-factory/vcf-svg --save


Once installed, import it in your application:

import '@vaadin-component-factory/vcf-svg';

Add <vcf-svg> element to the page.


Running demo

  1. Fork the vcf-svg repository and clone it locally.

  2. Make sure you have npm installed.

  3. When in the vcf-svg directory, run npm install to install dependencies.

  4. Run npm start to open the demo.

Server-side API

This is the client-side (Polymer 3) web component. If you are looking for this web components server-side (Java) API for the Vaadin Platform, it can be found here:

Vaadin Prime

This component is available in the Vaadin Prime subscription. It is still open source, but you need to have a valid CVAL license in order to use it. Read more at:


Commercial Vaadin Add-on License version 3 (CVALv3). For license terms, see LICENSE.

Vaadin collects development time usage statistics to improve this product. For details and to opt-out, see:


Link to this version
ImportedReleased 23 June 2020Other
Framework Support
Polymer 3.0+
Browser Independent
Install with
npm install @vaadin-component-factory/vcf-svg"@1.0.4"
Run the above npm command in your project folder. If you have any issues installing, please contact the author.
Release notes - Version 1.0.4


  • @polymer/iron-icon#^3.0.1
  • @polymer/iron-iconset-svg#^3.0.1
  • @polymer/polymer#3.2.0
  • @svgdotjs/svg.js#^3.0.16
  • @vaadin/vaadin-button#2.2.2
  • @vaadin/vaadin-element-mixin#^2.1.3
  • @vaadin/vaadin-license-checker#^2.1.2
  • @vaadin/vaadin-lumo-styles#1.5.0
  • @vaadin/vaadin-themable-mixin#^1.5.1
  • d3#^5.16.0