All Projects → stufreen → animol

stufreen / animol

Licence: other
A minimal, super lightweight (3KB minimized and gzipped), zero dependency, JavaScript animation library.

Programming Languages

javascript
184084 projects - #8 most used programming language
Vue
7211 projects

Projects that are alternatives of or similar to animol

animatePaper.js
An animation library for paper.js.
Stars: ✭ 33 (+37.5%)
Mutual labels:  easing-functions, animation-library
web-animation-club
CSS controlled animations with transitionEnd, onTransitionEnd, animationend, onAnimationEnd events and frame throwing. Tiny javascript library with cross-browser methods to handle css animation/transition callbacks and event loop frame throwing. 📚🖥️📱
Stars: ✭ 52 (+116.67%)
Mutual labels:  animation-library
bezier-editor
A tool base on HTML5 canvas to create bezier curve like photoshop and then it can be exported as JavaScript code to create an animation path for an HTML element.
Stars: ✭ 21 (-12.5%)
Mutual labels:  animation-library
goopylib
A simple-yet-powerful 2D graphics framework built on top of Tkinter capable of creating good-looking & modern GUIs, games, and simple animations.
Stars: ✭ 19 (-20.83%)
Mutual labels:  easing-functions
interpolations
Lightweight Unity library for smoothing movements and value progressions in code (dragging, easing, tweening).
Stars: ✭ 29 (+20.83%)
Mutual labels:  easing-functions
android-animations
Perform tweened animations such as Attention, Bounce, Fade, Flip, Rotate, Slide and Zoom on Views
Stars: ✭ 118 (+391.67%)
Mutual labels:  easing-functions
react-animated-router
Dynamic transitions with react-router(v6) and react-transition-group
Stars: ✭ 52 (+116.67%)
Mutual labels:  animation-library
PhaserCHOP-TD-Summit-Talk
Project files associated with http://github.com/dbraun/PhaserCHOP and David Braun's "Quantitative Easing" talk at the 2019 TouchDesigner Summit https://www.youtube.com/watch?v=S4PQW4f34c8
Stars: ✭ 36 (+50%)
Mutual labels:  easing-functions
Kotlin-Animation-DSL
simplify Android animation code by redefining API, use just one third of code to create animation compare to origin Android API
Stars: ✭ 45 (+87.5%)
Mutual labels:  animation-library
PhaserCHOP
A TouchDesigner channel operator for phase-staggered animations
Stars: ✭ 15 (-37.5%)
Mutual labels:  easing-functions
android-helpers
Android helpers collection
Stars: ✭ 20 (-16.67%)
Mutual labels:  animation-library
kinieta
A Fast Animation Engine with an Intuitive API
Stars: ✭ 44 (+83.33%)
Mutual labels:  animation-library
rebez
Cubic bezier implementation in Reason / OCaml.
Stars: ✭ 31 (+29.17%)
Mutual labels:  easing-functions
Dynamic.css
🚀 Awesome Library of CSS3 animations 🎉
Stars: ✭ 38 (+58.33%)
Mutual labels:  animation-library
ezing
Easing functions for Rust
Stars: ✭ 47 (+95.83%)
Mutual labels:  easing-functions
generativepy
Library for creating generative art and maths animations
Stars: ✭ 70 (+191.67%)
Mutual labels:  animation-library
MountainView
The animation curve looks like Mountain View.
Stars: ✭ 13 (-45.83%)
Mutual labels:  animation-library
scrollxp
Alpine.js-esque library for scrolling animations on websites
Stars: ✭ 50 (+108.33%)
Mutual labels:  animation-library
smoothr
A custom React router that leverages the Web Animations API and CSS animations.
Stars: ✭ 28 (+16.67%)
Mutual labels:  animation-library
transition-hook
☄️ An extremely light-weight react transition animation hook which is simpler and easier to use than react-transition-group
Stars: ✭ 250 (+941.67%)
Mutual labels:  animation-library

A minimal, super lightweight (3KB minimized and gzipped), zero dependency, JavaScript animation library.

Update (August 2021)

Since this library was created a standards-based alternative has been introduced: the Web Animation API. This API is well-supported in modern browsers. Unless you need to support old browsers like IE 10 you will be better off using it than this library. If you do need to support older browsers, you should probably still use the Web Animation API with a polyfill.

Installation

npm install animol --save

Basic usage

import * as animol from 'animol';

const myElement = document.getElementById('my-element');

animol.css(
  myElement, // DOM element
  2000, // Duration
  { marginLeft: '0px', backgroundColor: '#FF0000' }, // From
  { marginLeft: '200px', backgroundColor: '#00FF00' }, // To
  animol.Easing.easeInOutCubic, // Easing function
  1000 // Delay
);

Documentation

Go to Documentation

Motivation

Animol is intended to be super lightweight, ease to use and performant. It abstracts the repetitive logic for calling requestAnimationFrame, easing, and parsing CSS strings.

It's ideal for small projects where you want to do some JavaScript animations without reinventing the wheel, and you don't want to import a large library.

For advanced use cases involving timelines, svg, etc. check out Greensock or Anime.js.

Browser Compatibility

Compatible with all modern browsers and IE 10+.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].