---
title: "Shapes animated icon"
description: "Shapes animated icon (Essentials). The shapes pop into place in turn, for categories or design elements. Light: the triangle squeezes and pops with a twist, then the square a beat later twisting the other way, then the circle, each settling back. Strong: a harder round of pops in the same order, then a second, smaller round runs through them again."
canonical: https://generativeicons.com/icons/shapes/
---

# Shapes animated icon

The shapes pop into place in turn, for categories or design elements. Light: the triangle squeezes and pops with a twist, then the square a beat later twisting the other way, then the circle, each settling back. Strong: a harder round of pops in the same order, then a second, smaller round runs through them again.

- Id: `shapes`
- Category: Essentials
- Search terms: categories, category, browse categories, design elements, elements, geometric, triangle, square, circle, primitives, insert shape
- One action, back to rest
- Styles: outline, solid, duotone; outline weights 1.5, 2, 2.5 (any from 1 to 3); motion light or strong
- File: https://generativeicons.com/assets/shapes.lottie (dotLottie, 6078 bytes, sha256 d7cc40ef9c54c9fec35483c790d35320baf6ff4074d94c57ccbc0bdefce8c8eb)
- License: MIT

## Install

```sh
npm install @lottiefiles/generative-icons-runtime
npx generative-icons init
npx generative-icons add shapes
```

## React

```tsx
// npm install @lottiefiles/generative-icons-react
'use client';
import { AnimatedIcon } from '@lottiefiles/generative-icons-react';
import icon, { src } from './generative-icons/shapes.mjs';

export function ShapesIcon() {
  return <AnimatedIcon icon={icon} src={src} size={32}
    color="#ffffff" variant="outline" weight={2}
    motion="light" theme="dark" />;
}
```

## JavaScript

```js
import { createIcon } from '@lottiefiles/generative-icons-runtime';
import icon, { src } from './generative-icons/shapes.mjs';

const handle = await createIcon(canvas, {
  icon, src,
  color: '#ffffff', style: 'outline', weight: 2,
  motion: 'light', theme: 'dark'
});
button.addEventListener('click', () => handle.play());
// On removal: handle.destroy();
```

More: https://generativeicons.com/icons/shapes/ · https://generativeicons.com/api/icons/shapes
