Sequence
The responsive CSS animation framework for creating unique sliders, presentations, banners, and other step-based applications.
Top Related Projects
The motion graphics toolbelt for the web
JavaScript animation engine
GSAP (GreenSock Animation Platform), a JavaScript animation library for the modern web
🍿 A cross-browser library of CSS animations. As easy to use as an easy thing.
Animate on scroll library
A simple library to take care of complicated animations.
Quick Overview
Sequence is a responsive CSS animation framework that allows you to create slick, modern step-based animations with minimal effort. It provides a simple way to add animations to your web projects without the need for JavaScript or complex CSS keyframes.
Pros
- Easy to use and implement with minimal code
- Responsive design that works well on various screen sizes
- Customizable with many animation options and styles
- Lightweight and performant
Cons
- Limited to step-based animations, may not be suitable for complex, continuous animations
- Requires a specific HTML structure, which might not fit all project layouts
- Less flexibility compared to JavaScript-based animation libraries
- Documentation could be more comprehensive
Code Examples
- Basic Sequence Animation:
<div class="sequence">
<div class="seq-step1">Step 1</div>
<div class="seq-step2">Step 2</div>
<div class="seq-step3">Step 3</div>
</div>
- Customizing Animation Delay:
<div class="sequence" data-seq-delay="1s">
<div class="seq-step1">Delayed Step 1</div>
<div class="seq-step2">Delayed Step 2</div>
</div>
- Using Different Animation Types:
<div class="sequence">
<div class="seq-step1 seq-fade">Fade In</div>
<div class="seq-step2 seq-slide-up">Slide Up</div>
<div class="seq-step3 seq-scale">Scale</div>
</div>
Getting Started
- Include the Sequence CSS file in your HTML:
<link rel="stylesheet" href="path/to/sequence.css">
- Create your HTML structure using the appropriate classes:
<div class="sequence">
<div class="seq-step1">Your content for step 1</div>
<div class="seq-step2">Your content for step 2</div>
<div class="seq-step3">Your content for step 3</div>
</div>
- Customize the animation types and delays as needed:
<div class="sequence" data-seq-delay="0.5s">
<div class="seq-step1 seq-fade">Fading content</div>
<div class="seq-step2 seq-slide-up">Sliding content</div>
</div>
That's it! Your animations will now play when the elements enter the viewport.
Competitor Comparisons
The motion graphics toolbelt for the web
Pros of mojs
- More versatile and powerful animation library, capable of complex motion graphics
- Offers a modular approach, allowing for custom builds and optimized performance
- Provides a rich API for fine-grained control over animations
Cons of mojs
- Steeper learning curve due to its extensive features and API
- Larger file size, which may impact page load times for simpler projects
- Less suitable for quick, basic animations compared to Sequence
Code Comparison
Sequence:
var sequence = new Sequence(element, {
autoPlay: true,
delay: 1000,
interval: 3000
});
mojs:
const burst = new mojs.Burst({
radius: { 0: 100 },
count: 5,
children: {
shape: 'circle',
fill: { 'cyan': 'yellow' },
duration: 2000
}
});
Summary
Sequence is better suited for simple, straightforward animations, especially for slideshows and basic transitions. It's easier to set up and use for beginners.
mojs, on the other hand, offers a more comprehensive animation toolkit. It's ideal for creating complex, interactive animations and motion graphics. While it requires more time to master, it provides greater flexibility and control over animations.
Choose Sequence for quick, basic animations, and mojs for more advanced, customizable motion graphics projects.
JavaScript animation engine
Pros of anime
- Lightweight and flexible JavaScript animation library
- Supports a wide range of animation properties and easing functions
- Can animate CSS transforms, SVG, DOM attributes, and JavaScript Objects
Cons of anime
- Requires JavaScript knowledge to implement animations
- May have a steeper learning curve for beginners compared to Sequence
- Limited built-in UI controls for playback manipulation
Code Comparison
Sequence:
var sequence = new Sequence(element, options);
sequence.animate(1);
anime:
anime({
targets: '.element',
translateX: 250,
rotate: '1turn',
duration: 800
});
Key Differences
- Sequence focuses on creating step-based animations, while anime provides more granular control over individual properties
- Sequence offers built-in UI controls, whereas anime relies on custom implementation for playback controls
- anime has a more extensive API for fine-tuning animations, while Sequence emphasizes simplicity and ease of use
Use Cases
- Sequence: Ideal for creating guided tours, step-by-step tutorials, or slide-based presentations
- anime: Better suited for complex, property-based animations, interactive web experiences, and dynamic SVG animations
GSAP (GreenSock Animation Platform), a JavaScript animation library for the modern web
Pros of GSAP
- More comprehensive animation capabilities, including complex timelines and advanced easing
- Larger community and ecosystem, with extensive documentation and plugins
- Better performance, especially for complex animations
Cons of GSAP
- Steeper learning curve due to its extensive feature set
- Larger file size, which may impact load times for smaller projects
- Commercial license required for some advanced features
Code Comparison
Sequence:
var sequence = new Sequence(element, options);
sequence.animate(1, {
opacity: 1,
translateY: 0
});
GSAP:
gsap.to(element, {
duration: 1,
opacity: 1,
y: 0,
ease: "power2.out"
});
Summary
GSAP offers more powerful animation capabilities and better performance, making it suitable for complex projects. However, it comes with a steeper learning curve and potential licensing costs. Sequence is simpler and more lightweight, making it a good choice for basic animations in smaller projects. The code comparison shows that GSAP provides more granular control over animations, while Sequence offers a more straightforward API for basic transitions.
🍿 A cross-browser library of CSS animations. As easy to use as an easy thing.
Pros of Animate.css
- Lightweight and easy to implement with simple CSS classes
- Extensive library of pre-built animations
- Wide browser compatibility and responsive design
Cons of Animate.css
- Limited control over animation sequences
- Lacks built-in JavaScript API for advanced control
- May require additional JavaScript for complex animations
Code Comparison
Animate.css:
<div class="animate__animated animate__fadeIn">
This element will fade in
</div>
Sequence:
var sequence = new Sequence(element, {
animateCanvas: true,
phaseThreshold: 180,
preloader: true
});
Key Differences
Animate.css is a pure CSS animation library, while Sequence is a JavaScript-based slider and presentation framework. Animate.css focuses on simple, single-element animations, whereas Sequence specializes in creating complex, multi-step animation sequences.
Animate.css is ideal for quick, straightforward animations without the need for JavaScript. Sequence, on the other hand, offers more control and is better suited for creating interactive slideshows or step-by-step presentations with advanced animation capabilities.
While Animate.css relies on CSS classes for implementation, Sequence requires JavaScript initialization and provides a robust API for controlling animations programmatically.
Animate on scroll library
Pros of AOS
- Lightweight and easy to implement
- Supports a wide range of animation effects
- Works well with responsive designs
Cons of AOS
- Limited to scroll-based animations
- May not be suitable for complex, multi-step animations
- Requires JavaScript to function
Code Comparison
Sequence:
var sequence = new Sequence(element, options);
sequence.goTo(3);
sequence.next();
sequence.prev();
AOS:
<div data-aos="fade-up" data-aos-duration="1000">
Animated element
</div>
AOS.init();
Key Differences
- Sequence focuses on creating step-based animations and slideshows, while AOS is primarily for scroll-triggered animations
- Sequence offers more control over animation flow and timing, whereas AOS is simpler to implement but less flexible
- AOS is better suited for adding subtle animations to static content, while Sequence excels at creating interactive, multi-step presentations
Use Cases
- Choose Sequence for: Interactive slideshows, step-by-step tutorials, or complex animation sequences
- Choose AOS for: Adding subtle animations to static websites, enhancing scroll experiences, or quickly implementing simple animations
A simple library to take care of complicated animations.
Pros of Choreographer-js
- More flexible and customizable animation sequences
- Supports complex, multi-step animations with ease
- Lightweight and dependency-free
Cons of Choreographer-js
- Steeper learning curve due to its more advanced features
- Less extensive documentation compared to Sequence
- Fewer pre-built animation options out of the box
Code Comparison
Sequence:
var sequence = new Sequence(element, {
autoPlay: true,
interval: 4000,
animateStartingFrameIn: false,
transitionThreshold: 100
});
Choreographer-js:
var choreographer = new Choreographer({
animations: [{
range: [0, 100],
selector: '.element',
type: 'scale',
style: 'transform',
from: 1,
to: 2
}]
});
Both libraries aim to create smooth animations, but Choreographer-js offers more granular control over animation steps and properties. Sequence provides a simpler API for basic slideshow-like animations, while Choreographer-js allows for more complex, multi-step animations with fine-tuned control over individual elements and properties.
Convert designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual CopilotREADME
Sequence.js
The responsive CSS animation framework for creating unique sliders, presentations, banners, and other step-based applications.
Sequence.js provides all of the JavaScript functionality you need for step-based applications such as sliders and presentations, allowing you to concentrate on producing your content with style.
Easily add transitions using the .seq-in
and .seq-out
CSS classes automatically added via Sequence.js to style how your slides/steps and content animate.
Find out how Sequence.js works in the Introduction theme or for more details, head to the documentation.
See the introduction and ready-made themes.
Features
- Rapid development of animated step-based applications using CSS
- Fully supports responsive design
- Supported on mobile, tablet, and desktop devices
- No limitations on CSS, HTML, and workflow you can use
- Animate canvas and content
- Hardware acceleration (for smooth animation even on mobile devices)
- Touch support via Hammer.js
- Auto play
- Easy-to-add next/previous/pause buttons and pagination
- Preloader via ImagesLoaded
- Hash tag support
- Keyboard navigation
- 30+ options and API for custom functionality
- Top quality documentation
- Supports all major browsers with a fallback mode for legacy browsers (detailed browser support)
- Ready-made themes available
- Yeoman generator available for quick scaffolding of themes
Browser Support
Sequence.js is supported in modern browsers on major platforms, with a fallback theme for Internet Explorer 8 and 9, and other older browsers that don't support CSS transitions.
See Browser Support in more detail.
Getting Started
To get started download Sequence.js and then head to the documentation. If you'd like to contribute to Sequence.js development, please see the contributing guidelines.
Download
Sequence.js can also be installed using the Bower command:
bower install sequencejs
or NPM:
npm install sequencejs
Philosophy
Sequence.js aims to provide a complete animation framework for you to create animated step-based applications almost entirely in CSS without getting in the way of how you or a web browser work. Create content and then animate it using the HTML, CSS, and workflow you're used to. Sequence.js will take care of the JavaScript functionality. There's no special syntax to learn, no limitations on the workflow you are used to, and no heavy JavaScript implementations recreating what the browser is already capable of.
Authors
Ian Lunn and contributors.
Follow @IanLunn on Twitter for Sequence.js news, web design & development links, tips, and opinions
Sponsors
Browser testing environment provided by BrowserStack.
Licenses
License information can be found on the Sequence.js website.
Hire Ian Lunn
Ian Lunn is a Web Designer, Front-end Developer, and author of CSS3 Foundations.
Hire Ian Lunn for responsive design, WordPress sites, HTML, CSS, and JavaScript.
Top Related Projects
The motion graphics toolbelt for the web
JavaScript animation engine
GSAP (GreenSock Animation Platform), a JavaScript animation library for the modern web
🍿 A cross-browser library of CSS animations. As easy to use as an easy thing.
Animate on scroll library
A simple library to take care of complicated animations.
Convert designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual Copilot