A lightweight, dependency-free JavaScript library for animating SVG drawings with a hand-drawn effect.
Vivus is a lightweight JavaScript library that animates SVGs to simulate a hand-drawn effect. It solves the problem of adding engaging, progressive drawing animations to SVG graphics without complex code or external dependencies. The library works by manipulating the `strokeDashoffset` CSS property to create the illusion of lines being drawn sequentially.
Frontend developers and designers who want to add interactive drawing animations to SVG graphics on websites or web applications.
Developers choose Vivus for its zero dependencies, simple API, and multiple built-in animation types, making it easy to integrate dynamic SVG effects with minimal setup.
JavaScript library to make drawing animation on SVG
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Works standalone without external libraries, reducing bundle size and simplifying integration, as highlighted in the README's key features.
Offers built-in types like delayed, sync, and oneByOne for quick setup without custom code, detailed in the Animations section.
Supports inline SVGs, dynamic loading via object tags, and external files, making it adaptable to various project setups.
Provides methods like play, stop, reset, and setFrameProgress for programmatic animation control, enabling dynamic user interactions.
Cannot animate SVG text elements, requiring conversion to paths or alternative solutions, as admitted in the principles section.
Has known glitches in Firefox and requires forceRender workarounds for Internet Explorer, adding complexity for cross-browser support.
Scenario-based animations involve manual DOM attribute setup (e.g., data-start, data-duration), which can be cumbersome and error-prone.