Anime.js
Anime.js is a lightweight JavaScript animation library with a simple, yet powerful API. It works with CSS properties, SVG, DOM attributes, and JavaScript Objects. Follow through animations made easy. Anime's built-in staggering system makes complex follow-through and overlapping animations simple. It can be used on both timings and properties. Animate multiple CSS transforms properties with different timings simultaneously on a single HTML element. Play, pause, control, reverse and trigger events in sync using the complete built-in callbacks and controls functions. Anime.js works with anything web. CSS, SVG, DOM attributes and JavaScript Objects, animate everything with a single unified API. Staggering allows you to animate multiple elements with follow-through and overlapping action. Animation keyframes are defined using an Array, within the keyframes property. Each keyframe duration will be equal to the animation's total duration divided by the number of keyframes.
Learn more
FusionCharts
FusionCharts is a powerful and easy-to-use JavaScript charting library that helps developers to add interactive charts and data visualizations to their web and mobile applications. With 100+ chart types, including column, bar, line, area, pie, doughnut, scatter, bubble, and more, it's easy to create professional-looking charts that are engaging and informative. The library is completely cross-browser compatible and works seamlessly with a wide range of technologies, including Angular, React, Vue, and more.
FusionCharts product suite consists of
• FusionCharts Suite XT
• FusionTime
• FusionExport
• FusionGrid
FusionCharts offers a wide range of features that make it one of the most popular charting libraries on the market, including:
• Real-time data updates
• Dynamic updates of data using AJAX
• Drill-down and multi-level charts
• Animation and special effects
• Export to PDF, PNG, and SVG
• Responsive design
• Accessibility support
Learn more
Three.js
Three.js is a JavaScript 3D library. The aim of the project is to create an easy-to-use, lightweight, cross-browser, general-purpose 3D library. The current builds only include a WebGL renderer but WebGPU (experimental), SVG and CSS3D renderers are also available in the examples. To actually be able to display anything with three.js, we need three things, scene, camera, and renderer, so that we can render the scene with the camera. In addition to the WebGLRenderer, Three.js comes with a few others, often used as fallbacks for users with older browsers or for those who don't have WebGL support for some reason. Create a loop that causes the renderer to draw the scene every time the screen is refreshed (on a typical screen this means 60 times per second). Anything you want to move or change while the app is running has to go through the animate loop. You can of course call other functions from there.
Learn more
Choreographer-js
A simple library to take care of complicated animations. You can also add custom functions that do non-CSS animations! Install and save to your package.json, and include it in your Javascript. Brew up some instant scroll animations. Animate based on scroll location, animate based on mouse X location and create multiple animations based on mouse X location. Now you can create an instance of Choreographer, and run the animations based on whatever measurement floats your boat (ex. scroll position, mouse position, timestamp, whatever). The easiest way to understand how this all works is to check out the examples. Bugs will occur if you overlap animation ranges that affect the same style properties! There are two built-in animation functions available, called 'scale' and 'change'. Progress is what allows for progressive scaling of values (ex. smooth fading of opacity, 2d translation, etc.) If the value is between 0 and 1, that means you are within a range.
Learn more