
Shape Shifter
SVG animation tool for Android, iOS, & the web.
Contributors
Shape Shifter is all of us
Our contributors 28
Thank you for supporting Shape Shifter.
Alex Lockwood
$200 USD
Huyen Tue Dao
Supporter
$460 USD
Nicolas Roard
Supporter
$285 USD
Or Bar
Supporter
$210 USD
Seiji Hozuki
Supporter
$150 USD
Alexander Ghe...
Backer
$62 USD
Yuri Schimke
Supporter
$60 USD
Travis Arnold
Backer
$56 USD
Roman Nurik
Backer
$44 USD
Budget
Transparent and open finances.
Balance transfer from Shape Shifter to oc-javascript-fund
--.-- USD
$1,627.23 USD
$1,627.23 USD
$20.00 USD
About
Shape Shifter is an open source developer tool that simplifies the creation of icon animations for Android, iOS, and the web. https://shapeshifter.design

Problem
Writing high-quality path morphing animations is a tedious and time-consuming task. In order to morph one shape into another, the SVG paths describing the two must be compatible with each other—that is, they need to have the same number and type of drawing commands. This is problematic because:
- Design tools—such as Sketch and Illustrator—do not easily expose the order of points in a shape, making it difficult to change their order. As a result, engineers will often have to spend time tweaking the raw SVG path strings given to them by designers before they can be morphed, which can take a significant amount of time.
- Design tools often map to shape primitives not supported in certain platforms (e.g. circles need to be represented by a sequence of curves and/or arcs, not simply by their center point and radius).
- Design tools cannot place multiple path points in the same location, a technique that is often necessary when making two shapes compatible with each other.
- Design tools provide no easy way to visualize the in-between states of the desired path morph animation.
Features
To address these problems, Shape Shifter provides the following features:
- The ability to add/remove points to each path without altering their original appearance. The added points can be modified by dragging them to different positions along the path, and they can be later deleted using the keyboard as well.
- The ability to reverse/shift the relative positions of each path's points. While reordering points won't affect whether or not two paths are compatible, it often plays a huge role in determining the appearance of the resulting animation.
- Shape Shifter automatically converts incompatible pairs of SVG commands into a compatible
format. There's no longer any need to convert
Ls intoQs andAs intoCs by hand in order to make your paths compatible—Shape Shifter does this for you behind-the-scenes! - Shape Shifter provides a useful utility called 'auto fix', which takes two incompatible paths and attempts to make them compatible in an optimal way. Depending on the complexity of the paths, auto fix may or may not generate a satisfying final result, so further modification may be necessary in order to achieve the animation you're looking for.
- The ability to export the results to SVG spritesheets, CSS keyframes, and Animated Vector Drawable format for use on the web and in Android applications.
Our team
Alex Lockwood