A Powerful CSS Animation Library for Advanced Motion Design. Zero JS Required. Over 500 Effects, Letter, Word & Line Stagger Animations, Utilities, and easy CDN or NPM Install.
{css}animation is a lightweight, modular CSS animation library built for front-end developers, creative coders, and UI ninjas. Get access to A Rich Set of Ready-to-Use Animation Classes to bring your interfaces to life. From simple fades and zooms to dynamic letter effects and 3D transitions, weโve got your motion design needs covered.
You're in control. Just apply the class names where you want them. Zero setup. No JavaScript needed. Just clean, reusable animations that "just work."
- Extensive Library of Pre-built Animations: Easily add fades, zooms, rotates, bounces, skews, and much more.
- Text, Element, & Letter Animations: Bring life to individual letters, words, or entire elements.
- Super Easy to Use: Just add a class and your animation is live. Seriously!
- Highly Customizable: Tweak animation properties to fit your design perfectly.
- Zero JavaScript Dependencies: Keep your project lean and fast.
- Modern Dev Friendly: Works great with Tailwind CSS, React, and your favorite build tools.
๐ Live Demo | Download via NPM | CDN jsDelivr | CDN unpkg
Choose the method that fits your workflow best.
npm i @hellouxpavel/cssanimation
yarn add @hellouxpavel/cssanimation
import '@hellouxpavel/cssanimation';
CSS only
// Core CSS animations
import '@hellouxpavel/cssanimation/css';
// Utility CSS classes (like speed, delay, easing)
import '@hellouxpavel/cssanimation/utility';
For Letter Animations (JavaScript required for this part):
//letter-by-letter, word-by-word, and line-by-line animations
import '@hellouxpavel/cssanimation/letter';
Quickly add {css}animation to your HTML. Include these lines in your <head>
tag:
<head>
<link
href="https://cdn.jsdelivr.net/npm/@hellouxpavel/cssanimation@latest/dist/cssanimation.min.css"
rel="stylesheet"
/>
<link
href="https://cdn.jsdelivr.net/npm/@hellouxpavel/cssanimation@latest/dist/cssanimation-utility.min.css"
rel="stylesheet"
/>
</head>
Once installed, simply add the base.cssanimation
to your element, along with your chosen animation class like .ca__fx-FadeIn
for fade in animation.
<h1 class="cssanimation ca__fx-fadeIn">cssanimation</h1>
That's it! You've got a CSS animated element. Super! ๐
For the demo and list of animation class name click here.
We use clear prefixes to help you find the right animation or utility class.
Prefix | Description | Example Usage |
---|---|---|
ca__fx- |
Visual FX animations (pure CSS) | <h1 class="ca__fx-bounceX"> |
ca__u- |
Utility classes (pure CSS spacing, layout, etc.) | <h1 class="ca__u-speedChill"> |
Want to keep your CSS bundle size minimal? You can import only the animation groups or individual effects you actually use!
HTML
<!-- Grouped animation (e.g., ca__BlurIn module) -->
<link rel="stylesheet" href="./dist/modules/ca__BlurIn.css" />
CSS, SCSS or JavaScript (Webpack, Vite, Rollup)
// Grouped module
@import './dist/modules/ca__BlurIn.css';
Check out the ./dist/modules/
folder to see all available animation groups:
Module | File |
---|---|
Blob Animation Group | ./dist/modules/ca__Blob.css |
Blur In Animation Group | ./dist/modules/ca__BlurIn.css |
Bounce Animation Group | ./dist/modules/ca__Bounce.css |
Elastic Animation Group | ./dist/modules/ca__Elastic.css |
FadeIn Animation Group | ./dist/modules/ca__FadeIn.css |
...and more | See ./dist/modules/ folder |
Need just one animation, like fadeIn
, bounceX
, or zoomIn
? You can import individual effect files too.
HTML
<!-- Individual effect (e.g., fadeIn only) -->
<link rel="stylesheet" href="./dist/animations/ca__fadeIn.css" />
CSS, SCSS or JavaScript (Webpack, Vite, Rollup)
// Individual effect
@import './dist/animations/ca__fadeIn.css';
Each file in the ./dist/animations/
folder is a standalone animation with scoped styles and keyframes. Explore and import only what you need!
{css}animation also provides a powerful set of pre-built utility classes to fine-tune your animations. Use them alongside the .cssanimation
base class and your chosen animation class.
This includes:
.ca__u-speed*
: Control animation speed (e.g.,.ca__u-speedChill
)..ca__u-ease*
: Set easing functions (e.g.,.ca__u-easeSnappy
)..ca__u-loop*
: Define repeat settings (e.g.,.ca__u-loopTriple
)..ca__u-delay*
: Add animation delays (e.g.,.ca__u-delay3
).
Check out the full list and details in cssanimation-utilities.md
.
Add Smart Text Animations with AnimText
AnimText is a lightweight JavaScript plugin that brings your {css}animation classes to life โ one letter, word, or line at a time.
Perfect for headlines, hero sections, callouts, and more.
- Supports
data-at-sequence
,data-at-random
,data-at-word
,data-at-line
, and more - Works out of the box with {css}animation classes like
ca__fx-fadeIn
- No dependencies โ just plug and play!
๐ Get Started with AnimText โ
Enhance Your {css}animation with Triggers
Want to animate on click, hover, scroll, or keypress โ without writing JavaScript?
Meet Triggle โ a zero-dependency helper to trigger {css}animation classes using simple data-triggle-*
attributes.
Works beautifully with {css}animation out of the box. Use it to make your animations interactive in seconds.
๐ Get Started with Triggle โ
{css}animation is built with accessibility in mind. If a user has enabled prefers-reduced-motion: reduce
in their system preferences, all animations are automatically disabled, ensuring a smoother and more comfortable experience for those sensitive to motion.
No extra configuration required. It's automatic, built-in, and developer-friendly.
{css}animation is proudly open-sourced under the Apache License 2.0. You can freely use it in personal, commercial, and creative projects.
Want a quick explanation? See the License Summary โ
We welcome all contributions โ whether itโs fixing bugs, adding animations, improving docs, or sharing ideas!
- Found an issue? Open a GitHub Issue
- Want to improve the library? Submit a Pull Request
- Have questions or feature ideas? Start a Discussion
Help us make animations even more magical for everyone.
Running into issues while using {css}animation in your project?
Whether it's a website, landing page, tool, or framework integration โ we're here to help!
- Report bugs or problems via GitHub Issues
- Ask questions or get guidance in GitHub Discussions
Weโre happy to assist and make sure everything works smoothly in your setup.
If {css}animation has helped you bring ideas to life, ship smoother animations, or simply made your UI feel more alive, Iโd be truly grateful for your support.
This project is the result of years of late nights, weekends, experiments, and a deep love for motion design.
I started {css}animation to make expressive, cinematic animation easier and more accessible for developers and designers everywhere.
Your support helps me:
- Maintain and improve the library
- Craft new animation packs and modules
- Share insights through my newsletter
๐ Pixels & Projects with Pavel
Even a small contribution means a lot, it fuels my creativity and helps keep this project alive and growing.
{css}animation isnโt just a library, itโs a love letter to motion.
If itโs helped bring your ideas to life, saved you time, or added delight to your UI, Iโd be incredibly grateful for your support as a monthly sponsor.
This project is handcrafted with care โ from animation packs to utilities โ during nights, weekends, and moments between client work.
Sponsorship helps keep this creative momentum going and ensures I can continue building tools that empower others.
- A personal shoutout in my newsletter
๐ Pixels & Projects with Pavel - Your name or project featured in the official documentation and on the website
- The satisfaction of supporting independent, open-source motion design
Letโs build a more playful, expressive web โ together.