Giter Site home page Giter Site logo

tweene's Introduction

Tweene - JS Animation Proxy - v0.5.10

Tweene is a JS library that helps to improve your favourite animation engine, allowing you to do more and better.

There are already a lot of good JavaScript animation libraries on the market, each one with specific features, strengths and weaknesses. Each programmer and each project have their specific requirements, so sometimes one library may be suitable while other times it could not.

Tweene is something different. It is an animation proxy: used as a wrapper of your chosen library, it may allow you to

  • write animations easily, thanks to its versatile interface that adapts itself to your programming style
  • gain extra features (play, pause, reverse, resume, restart and speed control, Timelines)
  • switch easily from one library to another any time you want.

Currently it can work together with GSAP, Velocity.js, Transit (CSS Transitions) or jQuery.

Resources

Getting started

To start using Tweene just include the script after your animation library of choice.

jsDelivr CDN provides free hosting for Tweene. You can simply replace the script URL with one of the minified files on jsDelivr like this:

<script src="//cdn.jsdelivr.net/tweene/VERSION_HERE/tweene-velocity.min.js"></script>

For more details, like version aliasing, please visit the README.

Alternatively, you can download the repository and host the files locally.

// use Tweene with GSAP
<script src="//cdnjs.cloudflare.com/ajax/libs/gsap/1.18.0/TweenMax.min.js"></script>
<script src="//cdn.jsdelivr.net/tweene/latest/tweene-gsap.min.js"></script>

// use Tweene with jQuery
<script src="//cdn.jsdelivr.net/jquery/latest/jquery.min.js"></script>;
<script src="//cdn.jsdelivr.net/tweene/latest/tweene-jquery.min.js"></script>
// or fetch all with a single HTTP request
<script src="//cdn.jsdelivr.net/g/jquery,tweene(tweene-jquery.min.js)"></script>

// use Tweene with Transit
<script src="//cdn.jsdelivr.net/jquery/latest/jquery.min.js"></script>;
<script src="//cdn.jsdelivr.net/jquery.transit/0.9.12/jquery.transit.min.js"></script>
<script src="//cdn.jsdelivr.net/tweene/latest/tweene-transit.min.js"></script>
// or fetch all with a single HTTP request
<script src="//cdn.jsdelivr.net/g/jquery,[email protected],tweene(tweene-transit.min.js)"></script>

// use Tweene with Velocity.js
<script src="//cdn.jsdelivr.net/jquery/latest/jquery.min.js"></script>;
<script src="//cdn.jsdelivr.net/velocity/1.2.2/velocity.min.js"></script>
<script src="//cdn.jsdelivr.net/tweene/latest/tweene-velocity.min.js"></script>
// or fetch all with a single HTTP request
<script src="//cdn.jsdelivr.net/g/jquery,[email protected],tweene(tweene-velocity.min.js)"></script>

// use Tweene with more then one library
<script src="//cdnjs.cloudflare.com/ajax/libs/gsap/1.18.0/TweenMax.min.js"></script>
<script src="//cdn.jsdelivr.net/jquery/latest/jquery.min.js"></script>
<script src="//cdn.jsdelivr.net/jquery.transit/0.9.12/jquery.transit.min.js"></script>
<script src="//cdn.jsdelivr.net/velocity/1.2.2/velocity.min.js"></script>
<script src="//cdn.jsdelivr.net/tweene/latest/tweene-all.min.js"></script>

<script>
// set the default time unit you want to use
Tweene.defaultTimeUnit = 'ms'; // or 's'

// set the default driver you want to use
Tweene.defaultDriver = 'gsap'; // or one of 'transit', 'velocity', 'jquery'
</script>

Package managers

bower install tweene
or
npm install tweene

// use Tweene with more then one library
require('tweene');

// use Tweene with GSAP
require('tweene/gsap');

// use Tweene with jQuery
require('tweene/jquery');

// use Tweene with Transit
require('tweene/transit');

// use Tweene with Velocity.js
require('tweene/velocity');

Time unit

Tweene tries to accommodate your current programming habits, not to force you to change them. For this reason, you can configure the default time unit used to indicate durations and delays of your tweens, by changing the value of Tweene.defaultTimeUnit (accepted value: 's' or 'ms'). Since the GSAP library uses natively seconds as time unit, when you will use only that specific driver through tweene-gsap.min.js or require('tweene/gsap') please note that the predefined value of Tweene.defaultTimeUnit will be 's'. In all other cases, it defaults to 'ms'. However, you can change it any time you want and also on a single call basis. Check http://tweene.com/docs/#duration for more details.

Changelog

  • 0.5.11 Fixed a label related issue.
  • 0.5.10 Fixed bug in jQuery driver.
  • 0.5.9 Fixed restart() procedure when timelines are paused.
  • 0.5.8 Added addPause() method. Fixed events call order.
  • 0.5.7 Fixed wrong link to Velocity.js homepage
  • 0.5.6 Fixed require() return value. Roadmap added.
  • 0.5.5 Added references for CDN hosting support.
  • 0.5.4 Renamed some internal vars. Added more details in README and comments.
  • 0.5.3 Renamed all files in lowercase. Fixed jQuery minimum version in package.json dependencies.
  • 0.5.2 Added support for npm and bower.
  • 0.5.1 Predefined transforms order: now transformations are applied always in the same order. Fixed some minor glitches with CSS transitions.
  • 0.5.0 First public release

License

Tweene is available under Artistic License 2.0, check the LICENSE.txt inside the archive for details.

Animation libraries of your choice are not included and have their own license agreement.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.