Universal animation and interaction platform for the modern web.
Repository ✦ Package ✦ Releases ✦ Discussions
pnpm add effekt
Note
Effekt is under active development. While the API is solid and mostly complete, some changes may still occur before the first stable release.
Ideas, suggestions and code contributions are welcome.
If you find any issues or bugs, please report them so the project can be improved.
- Free & Open-source: Publicly available codebase released under the MIT license.
- Small Bundlesize: Ultra-lightweight and optimized package without extra dependencies.
- Tree-Shakeable: Fully modular and modern system allows you to import only what is needed.
- Universal: Flexible library that works in any front-end environment.
- API-Friendly: Easy-to-use API designed to simplify and improve the developer experience.
- Written in TypeScript: Offers first-class TypeScript support that comes with bundled declarations.
- Multiple targets
- Individual transforms
- Complex value interpolation
- Animation Promise (async/await)
- One main object for all options
- Custom easing and offset for each property
- Advanced Methods and Events
- Multiple animation keyframes via array syntax
- Individual keyframe options via object syntax
- Stagger animation effect
- Automatic unit addition
- Unit conversion
- Color conversion
- Global configuration
- SVG path morph and animations
- Modular easing presets and modifiers
- Customizable spring animations
- InView animations
- Scroll animations
- Watch animations
- Main frame manager
- Custom external driver
- Chained multiple animations
- Utils and helpers
Feel free to ask questions or share new ideas.
Use the official discussions to get involved.
Check out the quick guide for more info.
Developed in 🇭🇷 Croatia, © Ivo Dolenc.
Released under the MIT license.