awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
veltman avatar

veltman/flubber

0
View on GitHub↗
6,920 stars·168 forks·JavaScript·MIT·18 views

Flubber

Flubber is an SVG path morphing library and shape transition engine designed to calculate smooth interpolations between complex vector shapes. It functions as a vector shape interpolator that generates intermediate path states between two sets of coordinates based on a progress value.

The toolkit provides specialized capabilities for managing transitions between different shape quantities, including the ability to split a single shape into multiple pieces or merge multiple shapes into one. It also enables morphing between custom paths and geometric primitives, such as circles and rectangles, using specific dimensions and center points.

The library covers a broad surface of SVG path manipulation, including the decomposition of composite path strings, coordinate-to-string serialization, and point-distribution matching to ensure smooth transitions.

Features

  • Shape Transition Engines - Implements a system for matching and transitioning between vector objects of different quantities for fluid morphing effects.
  • Path Morphing - Implements fluid interpolation of point arrays to morph complex SVG paths into circles.
  • Vector Animation Libraries - Provides a library for animating SVG paths and coordinate systems to create fluid vector transitions.
  • Geometric Path Splitting - Divides a single geometric path into multiple pieces to enable transitions between different object counts.
  • Geometry Primitive Morphing - Transform a path or coordinate set into a rectangle defined by a starting position and dimensions.
  • Animation Shape Splitters - Enables smooth transitions from a single object to a group of objects by splitting shapes.
  • Coordinate-Based Shape Manipulation - Programmatically alters geometric vertex coordinates to calculate intermediate states for shape morphing.
  • Shape Quantity Transitions - Provides the ability to split or merge shapes to create fluid transitions between sets of different sizes.
  • Point Distribution Matching - Aligns sets of shapes by index to prevent erratic movement during vector transitions.
  • Shape Pair Matching - Matches lists of shapes by index to generate corresponding transitions for every pair in a set.
  • SVG Path Manipulation Toolkits - Provides functions for splitting, merging, and converting coordinate arrays into standardized SVG path strings.
  • Vector Distribution Workflows - Facilitates animations that transition from a single vector object to a group of multiple objects.
  • Path Coordinate Interpolators - Calculates the intermediate coordinate states required to smoothly transition one vector shape into another.
  • Data-to-String Converters - Transforms arrays of coordinate points into formatted strings for SVG rendering.
  • SVG Path Calculations - Calculates and generates valid SVG path strings from coordinate point arrays.
  • Geometric Primitive Converters - Morphs custom complex shapes into basic circles or rectangles using specific dimensions.
  • Primitive Normalizers - Converts circles and rectangles into standardized coordinate arrays to allow them to morph with custom paths.
  • Primitive Morphing Targets - Transforms custom shapes into circles or rectangles using specific dimensions and center points.
  • SVG Path Parsers - Provides logic to parse composite SVG path strings into individual shape arrays for independent animation.
  • SVG Path Serializers - Converts geometric coordinate data into standardized SVG path data strings.
  • SVG Path String Splitters - Breaks single path strings containing multiple shapes into arrays of individual single-shape strings.
  • Shape Interpolators - Generates intermediate path states between two sets of coordinates based on a progress value for smooth transitions.
  • Structure-to-String Rendering - Transforms calculated coordinate arrays into standardized SVG path strings for rendering.

Star history

Star history chart for veltman/flubberStar history chart for veltman/flubber

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Projects sharing features with Flubber

These projects share indexed features with Flubber. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • yqnn/svg-path-editorYqnn avatar

    Yqnn/svg-path-editor

    5,222View on GitHub↗

    This project is a vector path manipulator and SVG geometry transformer that provides a visual interface for modifying SVG path data. It serves as a utility for adding, removing, and converting path segments without writing coordinate code by hand. The tool functions as an SVG path optimizer, reducing path data length and cleaning up coordinate systems. It also includes a geometry transformer for applying scaling, rotation, and translation to vector shapes. The software includes capabilities for visual path manipulation and global geometry transformations. It also provides viewport control to

    TypeScriptsvgsvg-editorsvg-parser
    View on GitHub↗5,222
  • cmiscm/leonsanscmiscm avatar

    cmiscm/leonsans

    10,179View on GitHub↗

    This project is a programmable font system and canvas typography engine that renders a geometric sans-serif typeface using raw coordinate data. It functions as a coordinate-based text animator, allowing for the real-time modification of glyph shapes and font weights. The system distinguishes itself through the ability to extract and manipulate the point coordinates of characters to create morphing effects, wave animations, and shape transitions. It enables dynamic weight interpolation and point-to-line visualizations, moving beyond static font rendering to produce procedural typography. The

    JavaScript
    View on GitHub↗10,179
  • exyte/macawexyte avatar

    exyte/Macaw

    6,050View on GitHub↗

    Macaw is a Swift vector graphics library and animation framework used to create and render scalable geometric shapes and text. It functions as an SVG rendering engine and an interactive vector graphics toolkit for displaying complex artwork while maintaining image quality at any scale. The framework enables the animation of shape properties and node transformations, including the ability to morph one vector path into another. It allows for the integration of external SVG files and the application of linear and radial gradients to fills and strokes. The toolkit covers a range of capabilities

    Swiftanimationdrawinggraphics
    View on GitHub↗6,050
  • ant-design/ant-motionant-design avatar

    ant-design/ant-motion

    4,613View on GitHub↗

    This is a React animation library providing a collection of components for creating choreographed motion, complex transitions, and SVG morphing. It functions as a motion design specification and a UI component animation wrapper system used to apply 3D transforms, Bezier curves, and entry-exit transitions to interface elements. The project includes a scroll-driven animation suite for synchronizing UI movements and parallax effects with the viewport position, as well as an SVG motion framework for animating paths, drawing lines incrementally, and interpolating coordinates for shape morphing. I

    JavaScriptanimationant-motionjavascript
    View on GitHub↗4,613
Compare all 30 related projects→

Frequently asked questions

What does veltman/flubber do?

Flubber is an SVG path morphing library and shape transition engine designed to calculate smooth interpolations between complex vector shapes. It functions as a vector shape interpolator that generates intermediate path states between two sets of coordinates based on a progress value.

What are the main features of veltman/flubber?

The main features of veltman/flubber are: Shape Transition Engines, Path Morphing, Vector Animation Libraries, Geometric Path Splitting, Geometry Primitive Morphing, Animation Shape Splitters, Coordinate-Based Shape Manipulation, Shape Quantity Transitions.

Which projects share features with veltman/flubber?

Projects with overlapping indexed features include: yqnn/svg-path-editor — This project is a vector path manipulator and SVG geometry transformer that provides a visual interface for modifying… cmiscm/leonsans — This project is a programmable font system and canvas typography engine that renders a geometric sans-serif typeface… exyte/macaw — Macaw is a Swift vector graphics library and animation framework used to create and render scalable geometric shapes… ant-design/ant-motion — This is a React animation library providing a collection of components for creating choreographed motion, complex… svgdotjs/svg.js — svg.js is a JavaScript library and toolkit for programmatically creating, modifying, and querying Scalable Vector… dmitrybaranovskiy/raphael — Raphael is a JavaScript library for creating, manipulating, and animating scalable vector graphics. It provides a…