Tailwind CSS Animation on Scroll - A simple and small (600 bytes) library to help animate elements while scrolling using responsive Tailwind CSS utility classes. React & Vue supported.
To view 20+ examples of TAOS in action go to versoly.com/taos.
TAOS can be included as a plugin into an existing Tailwind CSS project and will allow you to add responsive Tailwind CSS utility classes for animation on scroll.
Install TAOS package
npm install taos --save
Add plugin in tailwind.config.js
module.exports = {
plugins: [
require('taos/plugin')
],
}
Add safelist utilties tailwind.config.js
module.exports = {
safelist: [
'!duration-[0ms]',
'!delay-[0ms]',
'html.js :where([class*="taos:"]:not(.taos-init))'
]
}
Add content transform in tailwind.config.js
module.exports = {
content: {
relative: true,
transform: (content) => content.replace(/taos:/g, ''),
files: ['./src/*.{html,js}'],
},
}
Add script in <head>
<script>document.documentElement.classList.add('js')</script>
Add the CDN script or download and paste right before the closing </body>
tag
<script src="https://unpkg.com/taos@1.0.5/dist/taos.js"></script>
No, the goal of TAOS is to be as small as possible while providing the most functionality. We're looking into creating taos/core that would make it easy to plug into for custom use cases.
MutationObserver is a cleaner solution to check if the element is in view on page load and refresh. With IntersectionObserver it would require more code on top just to handle that part.
- AOS: is a great library and works by using custom classes such as aos-animate to animate elements.
- Tailwind: created an easy to use utility library that is easily extendable and flexible. Their variant and just in time compiler changed the game for developers.
If you need help or just want to discuss about the library join the community on Github:
Discuss about Versoly on GitHub
For casual chatting with others using the library: