# eaz

## Use Predefined Easing Functions

Using predefined easing functions is as simple as referencing a static property of the **`Easing`** class.

```javascript
import { Easing } from 'eaz';

Easing.cubic.in(0.3); // Output: 0.0269
```

{% hint style="info" %}
Every **`Easing`** object contains an in, out, and inOut method, and more options. Refer to the documentation for th&#x65;**`Easing`** class for more information.
{% endhint %}

## Create Custom Easing Functions

Use eaz's generational methods to create custom easing functions quickly

```javascript
import { Easing } from 'eaz';

Easing.polynomial(2.5).in(0.3); // Output: 0.0493
```

Or create entirely custom easing methods from scratch

```javascript
import { Easing } from 'eaz';

const myEasing = new Easing(t => t ** 2.5);
myEasing.in(0.3); // Output: 0.0493
```

## Easily Generate Demo Images

Generate images to test your easing functions

{% tabs %}
{% tab title="JavaScript" %}

```javascript
import { Easing, DemoImage } from '../index';

DemoImage.inOut(Easing.cubic, 'images/cubicInOut.png');
```

{% endtab %}

{% tab title="Output" %}

#### images/cubicInOut.png

![](https://2295660694-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MFKOhllDCtDrHJJMhJK%2F-MFKm8lWScORAXYC6nj3%2F-MFKsVAg6w3Hdkt5ndgo%2FcubicInOut.png?alt=media\&token=c1de6812-d94e-46ef-874b-c95283a8cd10)

###

{% endtab %}
{% endtabs %}
