What problem does it solve? Adding Lottie animations to web projects involves many decisions—choosing between dotlottie-web and dotlottie-react, handling SSR in Next.js, optimizing performance with Web Workers, and enabling interactivity—and getting any of these wrong leads to janky playback or broken builds. ## Core Features & Use Cases - Runtime Selection & Setup: Guidance on choosing between @lottiefiles/dotlottie-web and @lottiefiles/dotlottie-react, with installation and basic implementation patterns for vanilla JS and React. - Performance Optimization: Web Worker offloading with DotLottieWorker, worker grouping via workerId, lazy loading, auto-freeze configuration, and devicePixelRatio tuning. - Interactivity & Theming: State machine events and inputs, theme application per the dotLottie 2.0 spec, and dynamic slot overriding for colors, text, gradients, and vectors at runtime. - Use Case: A Next.js developer needs a branded loading animation that respects dark mode. The Skill provides the SSR-safe dynamic import pattern, DotLottieWorker setup, and setColorSlot calls to swap theme colors at runtime. ## Quick Start Add a looping Lottie animation to my React component using dotLottie and make it render off the main thread.