npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

ts-curves

v1.0.1

Published

Collection of Cubic Bezier Curves Can be Used for creating requestAnimationFrame transition

Downloads

8

Readme

🦚

Ts-Curves

Just input the progress and get your curve, it's that simple. as well keep in mind that progess is inbetween 0 to 1.

Features

  • Typescript Intellisense

  • Include definations for most of easing curves, So you would not need to check browser for what does this curve do,

image

Mention

  • Most of the Curves Taken from flutter Official repo link

Curves

DecelerateCurve: Decelerate()

A curve where the rate of change starts out quickly and then decelerates; an upside-down f(t) = t² parabola.

https://user-images.githubusercontent.com/69889565/182572742-1bf95a1d-ca99-43cf-abfb-c4ff88744d5f.mp4

fastLinearToSlowEaseIn: 0.18, 1.0, 0.04, 1.0

A curve that is very steep and linear at the beginning, but quickly flattens out and very slowly eases in

By default is the curve used to animate pages on iOS back to their original position if a swipe gesture is ended midway through a swipe.

https://user-images.githubusercontent.com/69889565/182572989-eaa2b56e-2596-445f-a3ba-7ff2b7e1c35e.mp4

ease: 0.25, 0.1, 0.25, 1.0

A cubic animation curve that speeds up quickly and ends slowly.

https://user-images.githubusercontent.com/69889565/182573929-32e567eb-0c5a-4410-90ef-c8f44482e9eb.mp4

easeIn: 0.42, 0.0, 1.0, 1.0

A cubic animation curve that starts slowly and ends quickly.

https://user-images.githubusercontent.com/69889565/182574001-8b5ee96f-f078-44b1-bfe5-ae9850ae34b3.mp4

easeInToLinear: 0.67, 0.03, 0.65, 0.09

A cubic animation curve that starts slowly and ends linearly.

The symmetric animation to [linearToEaseOut].

https://user-images.githubusercontent.com/69889565/182574058-83334a29-caf8-4e26-bd1e-a9b1982ca9ac.mp4

easeInSine: 0.47, 0.0, 0.745, 0.715

A cubic animation curve that starts slowly and ends quickly.

This is similar to [Curves.easeIn], but with sinusoidal easing for a slightly less abrupt beginning and end. Nonetheless, the result is quite gentle and is hard to distinguish from [Curves.linear] at a glance.

Derived from Robert Penner’s easing functions.

https://user-images.githubusercontent.com/69889565/182574172-fab861ad-79ab-4ac4-b95b-23412d8f1a07.mp4

easeInQuad: 0.55, 0.085, 0.68, 0.53

A cubic animation curve that starts slowly and ends quickly.

Based on a quadratic equation where f(t) = t², this is effectively the inverse of [Curves.decelerate].

Compared to [Curves.easeInSine], this curve is slightly steeper.

Derived from Robert Penner’s easing functions.

https://user-images.githubusercontent.com/69889565/182574275-b178d7eb-1e33-4a66-b8cc-37eb4b3a065e.mp4

easeInCubic: 0.55, 0.055, 0.675, 0.19

A cubic animation curve that starts slowly and ends quickly.

This curve is based on a cubic equation where f(t) = t³. The result is a safe sweet spot when choosing a curve for widgets animating off the viewport.

Compared to [Curves.easeInQuad], this curve is slightly steeper.

Derived from Robert Penner’s easing functions.

https://user-images.githubusercontent.com/69889565/182574380-21a0344d-485b-4229-b515-ff9bfe70f9a8.mp4

easeInQuart: 0.895, 0.03, 0.685, 0.22

A cubic animation curve that starts slowly and ends quickly.

This curve is based on a quartic equation where f(t) = t⁴.

Animations using this curve or steeper curves will benefit from a longer duration to avoid motion feeling unnatural.

Compared to [Curves.easeInCubic], this curve is slightly steeper.

Derived from Robert Penner’s easing functions.

https://user-images.githubusercontent.com/69889565/182574513-98822294-ff31-45c5-8999-48116775e99a.mp4

easeInQuint: 0.755, 0.05, 0.855, 0.06

A cubic animation curve that starts slowly and ends quickly.

This curve is based on a quintic equation where f(t) = t⁵.

Compared to [Curves.easeInQuart], this curve is slightly steeper.

Derived from Robert Penner’s easing functions.

https://user-images.githubusercontent.com/69889565/182574499-29e964c3-02e0-456c-83e4-29816180244f.mp4

easeInExpo: 0.95, 0.05, 0.795, 0.035

A cubic animation curve that starts slowly and ends quickly.

This curve is based on an exponential equation where f(t) = 2¹⁰⁽ᵗ⁻¹⁾.

Using this curve can give your animations extra flare, but a longer duration may need to be used to compensate for the steepness of the curve.

Compared to [Curves.easeInQuint], this curve is slightly steeper.

Derived from Robert Penner’s easing functions.

https://user-images.githubusercontent.com/69889565/182574904-0392050a-e714-4d58-a948-78e2b22d62ea.mp4

easeInCirc: 0.6, 0.04, 0.98, 0.335

A cubic animation curve that starts slowly and ends quickly.

This curve is effectively the bottom-right quarter of a circle.

Like [Curves.easeInExpo], this curve is fairly dramatic and will reduce the clarity of an animation if not given a longer duration.

Derived from Robert Penner’s easing functions.

https://user-images.githubusercontent.com/69889565/182574863-e5e3bb80-6040-4000-8030-71ecc96d6f18.mp4

easeInBack: 0.6, -0.28, 0.735, 0.045

A cubic animation curve that starts slowly and ends quickly.

This curve is similar to [Curves.elasticIn] in that it overshoots its bounds before reaching its end. Instead of repeated swinging motions before ascending, though, this curve overshoots once, then continues to ascend.

Derived from Robert Penner’s easing functions.

https://user-images.githubusercontent.com/69889565/182574833-2cac8b01-d1ce-4ee3-b665-d9ff3f4fbcca.mp4

easeOut: 0.0, 0.0, 0.58, 1.0

A cubic animation curve that starts quickly and ends slowly.

https://user-images.githubusercontent.com/69889565/182574811-b57d22b8-d0f2-4d49-b453-7076372f43db.mp4

linearToEaseOut: 0.35, 0.91, 0.33, 0.97

A cubic animation curve that starts linearly and ends slowly.

A symmetric animation to [easeInToLinear].

https://user-images.githubusercontent.com/69889565/182576349-aad9a4d2-b709-447d-8674-86fa7dd39cf0.mp4

easeOutSine: 0.39, 0.575, 0.565, 1.0

A cubic animation curve that starts quickly and ends slowly.

This is similar to [Curves.easeOut], but with sinusoidal easing for a slightly less abrupt beginning and end. Nonetheless, the result is quite gentle and is hard to distinguish from [Curves.linear] at a glance.

Derived from Robert Penner’s easing functions.

https://user-images.githubusercontent.com/69889565/182576493-e49ac3fc-6077-4c66-8e20-f0456e0a2d7a.mp4

easeOutQuad: 0.25, 0.46, 0.45, 0.94

A cubic animation curve that starts quickly and ends slowly.

This is effectively the same as [Curves.decelerate], only simulated using a cubic bezier function.

Compared to [Curves.easeOutSine], this curve is slightly steeper.

Derived from Robert Penner’s easing functions.

https://user-images.githubusercontent.com/69889565/182576573-f792936c-29c9-47a1-96c1-777fdd7dc7af.mp4

easeOutCubic: 0.215, 0.61, 0.355, 1.0

A cubic animation curve that starts quickly and ends slowly.

This curve is a flipped version of [Curves.easeInCubic].

The result is a safe sweet spot when choosing a curve for animating a widget's position entering or already inside the viewport.

Compared to [Curves.easeOutQuad], this curve is slightly steeper.

Derived from Robert Penner’s easing functions.

https://user-images.githubusercontent.com/69889565/182576849-84022ffb-22bb-4073-811a-2c94e42ae659.mp4

easeOutQuart: 0.165, 0.84, 0.44, 1.0

A cubic animation curve that starts quickly and ends slowly.

This curve is a flipped version of [Curves.easeInQuart].

Animations using this curve or steeper curves will benefit from a longer duration to avoid motion feeling unnatural.

Compared to [Curves.easeOutCubic], this curve is slightly steeper.

Derived from Robert Penner’s easing functions.

https://user-images.githubusercontent.com/69889565/182576815-88fe2eab-927a-4581-b8b3-43768eda9e1b.mp4

easeOutQuint: 0.23, 1.0, 0.32, 1.0

A cubic animation curve that starts quickly and ends slowly.

This curve is a flipped version of [Curves.easeInQuint].

Compared to [Curves.easeOutQuart], this curve is slightly steeper.

Derived from Robert Penner’s easing functions.

https://user-images.githubusercontent.com/69889565/182576764-54dafb33-d4e9-4f6a-b075-58e0054e0a73.mp4

easeOutExpo: 0.19, 1.0, 0.22, 1.0

A cubic animation curve that starts quickly and ends slowly.

This curve is a flipped version of [Curves.easeInExpo]. Using this curve can give your animations extra flare, but a longer duration may need to be used to compensate for the steepness of the curve.

Derived from Robert Penner’s easing functions.

https://user-images.githubusercontent.com/69889565/182577224-2286c837-d199-4fe9-97e3-36474fa97fcd.mp4

easeOutCirc: 0.075, 0.82, 0.165, 1.0

A cubic animation curve that starts quickly and ends slowly.

This curve is effectively the top-left quarter of a circle.

Like [Curves.easeOutExpo], this curve is fairly dramatic and will reduce the clarity of an animation if not given a longer duration.

Derived from Robert Penner’s easing functions.

https://user-images.githubusercontent.com/69889565/182577181-02f19f0b-7d99-41f8-80d9-abe42edec67a.mp4

easeOutBack: 0.175, 0.885, 0.32, 1.275

A cubic animation curve that starts quickly and ends slowly.

This curve is similar to [Curves.elasticOut] in that it overshoots its bounds before reaching its end. Instead of repeated swinging motions after ascending, though, this curve only overshoots once.

Derived from Robert Penner’s easing functions.

https://user-images.githubusercontent.com/69889565/182577164-d499f59e-1b02-4e9b-b6b3-d6295dcbf902.mp4

easeInOut: 0.42, 0.0, 0.58, 1.0

A cubic animation curve that starts slowly, speeds up, and then ends slowly.

https://user-images.githubusercontent.com/69889565/182577139-f5b39992-1be3-4660-b085-33d2a70a4364.mp4

easeInOutSine: 0.445, 0.05, 0.55, 0.95

A cubic animation curve that starts slowly, speeds up, and then ends slowly.

This is similar to [Curves.easeInOut], but with sinusoidal easing for a slightly less abrupt beginning and end.

Derived from Robert Penner’s easing functions.

https://user-images.githubusercontent.com/69889565/182577754-6e4ae182-14cf-4e53-99da-341b620ece8c.mp4

easeInOutQuad: 0.455, 0.03, 0.515, 0.955

A cubic animation curve that starts slowly, speeds up, and then ends slowly.

This curve can be imagined as [Curves.easeInQuad] as the first half, and [Curves.easeOutQuad] as the second.

Compared to [Curves.easeInOutSine], this curve is slightly steeper.

Derived from Robert Penner’s easing functions.

https://user-images.githubusercontent.com/69889565/182577805-24b0c54c-777e-4154-a1c5-8a9c4aa38a8c.mp4

easeInOutCubic: 0.645, 0.045, 0.355, 1.0

A cubic animation curve that starts slowly, speeds up, and then ends slowly.

This curve can be imagined as [Curves.easeInCubic] as the first half, and [Curves.easeOutCubic] as the second.

The result is a safe sweet spot when choosing a curve for a widget whose initial and final positions are both within the viewport.

Compared to [Curves.easeInOutQuad], this curve is slightly steeper.

Derived from Robert Penner’s easing functions.

https://user-images.githubusercontent.com/69889565/182577830-5afed587-bb51-48a4-8015-e86dc116e693.mp4

easeInOutQuint: 0.86, 0.0, 0.07, 1.0

A cubic animation curve that starts slowly, speeds up, and then ends slowly.

This curve can be imagined as [Curves.easeInQuint] as the first half, and [Curves.easeOutQuint] as the second.

Compared to [Curves.easeInOutQuart], this curve is slightly steeper.

Derived from Robert Penner’s easing functions.

https://user-images.githubusercontent.com/69889565/182577854-14b852c8-0ca3-41a7-bff1-6a2b8d31c0d9.mp4

easeInOutExpo: 1.0, 0.0, 0.0, 1.0

A cubic animation curve that starts slowly, speeds up, and then ends slowly.

Since this curve is arrived at with an exponential function, the midpoint is exceptionally steep.

Extra consideration should be taken when designing an animation using this.

Compared to [Curves.easeInOutQuint], this curve is slightly steeper.

Derived from Robert Penner’s easing functions.

https://user-images.githubusercontent.com/69889565/182577920-acb092e7-725f-4f1a-9cd7-c12dabbb7ae2.mp4

easeInOutCirc: 0.785, 0.135, 0.15, 0.86

A cubic animation curve that starts slowly, speeds up, and then ends slowly.

This curve can be imagined as [Curves.easeInCirc] as the first half, and [Curves.easeOutCirc] as the second.

Like [Curves.easeInOutExpo], this curve is fairly dramatic and will reduce the clarity of an animation if not given a longer duration.

Compared to [Curves.easeInOutExpo], this curve is slightly steeper.

Derived from Robert Penner’s easing functions.

https://user-images.githubusercontent.com/69889565/182577990-b856d208-8358-43fb-8f3f-6d88d199e3ea.mp4

easeInOutBack: 0.68, -0.55, 0.265, 1.55

A cubic animation curve that starts slowly, speeds up, and then ends slowly.

This curve can be imagined as [Curves.easeInBack] as the first half, and [Curves.easeOutBack] as the second.

Since two curves are used as a basis for this curve, the resulting animation will overshoot its bounds twice before reaching its end - first by exceeding its lower bound, then exceeding its upper bound and finally descending to its final position.

Derived from Robert Penner’s easing functions.

https://user-images.githubusercontent.com/69889565/182578136-8271afdb-df08-4321-8a74-d15cf59a831e.mp4

SlowInFastOut 0.4, 0.0, 0.2, 1.0

A curve that starts quickly and eases into its final position.

Over the course of the animation, the object spends more time near its final destination. As a result, the user isn’t left waiting for the animation to finish, and the negative effects of motion are minimized.

https://user-images.githubusercontent.com/69889565/182578396-606e55c3-dab9-4890-9db3-46d501022969.mp4

standardEasing, the name for this curve in the Material specification.

FastInSlowMiddle 0.15, 0.85, 0.85, 0.15

A cubic animation curve that starts quickly, slows down, and then ends quickly.

https://user-images.githubusercontent.com/69889565/182578292-9975718e-eb60-484a-947d-49195e368b47.mp4

BounceIN

An oscillating curve that grows in magnitude.

https://user-images.githubusercontent.com/69889565/182565127-79148519-a10d-48dc-87e8-46a16bb22039.mp4

BounceOut

An oscillating curve that first grows and then shrink in magnitude.

https://user-images.githubusercontent.com/69889565/182566512-592d4957-3939-49dc-9c6e-e2415709cb1b.mp4

BounceInOut

An oscillating curve that first grows and then shrink in magnitude.

https://user-images.githubusercontent.com/69889565/182566918-79c2ef4f-4c7c-40f6-b4be-8ef6b5ab8aee.mp4

ElasticIn

An oscillating curve that grows in magnitude while overshooting its bounds.

https://user-images.githubusercontent.com/69889565/182578589-e12bc222-ce0b-4ce0-b304-b9128f837bba.mp4

ElasticOut

An oscillating curve that shrinks in magnitude while overshooting its bounds.

https://user-images.githubusercontent.com/69889565/182578557-94ec7243-f649-4322-895c-3bd7ffd131c7.mp4

ElasticInOut

An oscillating curve that grows and then shrinks in magnitude while overshooting its bounds.

https://user-images.githubusercontent.com/69889565/182578581-16aab7a5-bafd-4b91-a593-397801e8f2be.mp4