Animated React component — VectorSquare / VectorSquareIcon
Hover the vector-square icon above to see the default draw animation.
Tree-shakable named import — only the icons you reference end up in your bundle.
import { VectorSquare } from "lucide-motion";Also exported as VectorSquareIcon for the Lucide-suffix naming convention.
Drop the component into your JSX. The default trigger plays the draw animation on hover.
import { VectorSquare } from "lucide-motion";
<VectorSquare size={32} />duration={0.2} stagger={0}duration={1.5} stagger={0.4}easing="linear"trigger="mount" repeat={Infinity}The icon's underlying SVG node tree — useful if you need to render or transform it yourself instead of using the component.
[
[
"path",
{
"d": "M19.5 7a24 24 0 0 1 0 10"
}
],
[
"path",
{
"d": "M4.5 7a24 24 0 0 0 0 10"
}
],
[
"path",
{
"d": "M7 19.5a24 24 0 0 0 10 0"
}
],
[
"path",
{
"d": "M7 4.5a24 24 0 0 1 10 0"
}
],
[
"rect",
{
"x": "17",
"y": "17",
"width": "5",
"height": "5",
"rx": "1"
}
],
[
"rect",
{
"x": "17",
"y": "2",
"width": "5",
"height": "5",
"rx": "1"
}
],
[
"rect",
{
"x": "2",
"y": "17",
"width": "5",
"height": "5",
"rx": "1"
}
],
[
"rect",
{
"x": "2",
"y": "2",
"width": "5",
"height": "5",
"rx": "1"
}
]
]