Communitygithub.com

whoamnesia/lottie-rive

Integração, controle e otimização de animações criadas por designers usando Lottie e Rive, com suporte a dotLottie, máquinas de estado Rive, data binding e handoff para desenvolvedores.

O que é lottie-rive?

Este skill capacita agentes de IA a trabalhar com animações Lottie e Rive criadas por designers, oferecendo playback, segmentação, rolagem interativa, temas em tempo de execução e otimização de tamanho. Para Lottie, ele recomenda o formato `.lottie` (zipado, 60-80% menor) com os runtimes `@lottiefiles/dotlottie-web` ou `@lottiefiles/dotlottie-react`, permitindo controle de play/pause, segmentos, scroll-driven animation e temas via dotLottie. Para Rive, ele abrange máquinas de estado (inputs booleanos/números/trigger, transições, listeners), data binding com view models e eventos para callbacks, com runtes para React, React Native, iOS, Android e Flutter. Ele também fornece diretrizes de handoff, como preparar arquivos do After Effects (Bodymovin), Figma Motion, Lottie Creator e Cavalry, e orienta na escolha entre Lottie, Rive, CSS, SVG ou vídeo conforme a necessidade. O skill é útil para desenvolvedores e motores de IA que precisam integrar animações ricas e responsivas em produtos web e mobile.

Funciona com~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/whoamnesia/motion-3d/tree/HEAD/skills/lottie-rive

Perguntar na sua IA favorita

Abre um novo chat com esta habilidade de agente já pré-carregada.

Documentação

astudio · Lottie & Rive

Papel: Senior Motion Designer & Creative Developer na astudio.one (15+ anos) — animações feitas por designers que são nítidas, leves e interativas. Bar: <root>/reference/studio-bar.md; <root> = dois níveis acima do diretório base deste skill, ou a pasta que contém scripts/motion.cjs.

Escolha o formato

NecessidadeEscolha
Animação linear feita por designer (ícone, ilustração, onboarding, estado vazio) com play/pause/segmentosLottie (.lottie via runtime dotLottie)
Animação interativa e com estado que reage a entrada ou dados do app (botões com estados, personagens, progresso, UI de jogo, ilustrações orientadas a dados)Rive (máquinas de estado + data binding)
Mudanças simples de estado na UI, hover/press, transiçõesCSS/Motion (astudio-motion:ui-motion) — nenhum arquivo necessário
Logo/ícone que pode ser desenhado em SVG e animado em códigoSVG + GSAP (astudio-motion:svg-motion) — exporte Lottie apenas se um runtime do app precisar
Conteúdo estilo vídeo (pessoas, filmagens)vídeo (<video>), não Lottie

Fluxo Lottie (references/lottie.md)

  1. Prefira .lottie (zip, 60-80% menor, agrupa imagens/temas/máquinas de estado) + @lottiefiles/dotlottie-web (canvas + WASM) ou @lottiefiles/dotlottie-react; use lottie-web apenas para necessidades legadas de renderizador SVG.
  2. Controle: play/pause/stop/setSpeed/setMode/setFrame/setSegment, eventos load/complete/frame; "máquinas de estado" baseadas em segmentos (toque o segmento checked, depois loop idle).
  3. Scroll: mapeie o progresso do scroll para setFrame; interatividade sem fiação via @lottiefiles/lottie-interactivity.
  4. Tema em tempo de execução (cores da marca, modo escuro) através de temas/slots dotLottie — não envie dois arquivos.
  5. Otimize: remova camadas ocultas/ativos não utilizados, sem imagens raster a menos que necessário, menos máscaras/mattes/efeitos (não suportados ou lentos), corte para o intervalo de quadros visível, verifique o tamanho do arquivo (< 50-100KB para ícones).
  6. Acessibilidade: role="img" + aria-label; pause em movimento reduzido (mostre um quadro estático significativo via setFrame); sem loops de reprodução automática > 5s sem um controle de pausa.

Fluxo Rive (references/rive.md)

  1. No editor: artboards, timelines, uma máquina de estado (estados, transições com condições, inputs: booleano/número/trigger, listeners para eventos de ponteiro), view models para data binding (propriedades string/número/cor/enum/trigger/lista vinculadas a propriedades da cena), eventos para callbacks do app.
  2. Runtime: @rive-app/react-canvas (useRive, useStateMachineInput, useViewModel, useViewModelInstance*), @rive-app/canvas para vanilla, runtimes nativos para iOS/Android/Flutter/RN; renderizador WebGL2 para cenas pesadas.
  3. Conduza a partir de dados do app (data binding) em vez de uma pilha de inputs; ouça eventos do Rive para reações do app.
  4. Pré-carregue arquivos críticos; dimensione o canvas com o layout de useRive (Fit, Alignment); pause fora da tela.

Visualização

node <root>/scripts/motion.cjs strip page.html --duration <s> renderiza uma página hospedando o arquivo Lottie/Rive (modo clock conduz seus loops rAF). Verifique o primeiro e último quadros, limites de segmentos e cores após a aplicação de tema.

Notas de handoff para designers

  • AE -> Lottie: plugin Bodymovin/LottieFiles; suportado: shape layers, transformações, trim paths, máscaras (limitado), texto (prefira contornos), precomposições; evite rigs pesados de expressões, efeitos, camadas 3D, modos de mesclagem.
  • Figma Motion exporta MP4/GIF/SVG/WebM e código (CSS/React/motion.dev) — para Lottie use Lottie Creator ou o plugin LottieFiles. Cavalry exporta Lottie nativamente.
  • Nomeie camadas de forma significativa (elas se tornam seletores para temas e depuração); entregue .lottie com temas.

Individual skills in this repo

This repo contains 3 individual skills — each has its own dedicated page.

whoamnesia/gsap

GSAP motion by astudio: timelines, ScrollTrigger scroll storytelling (pin, scrub, horizontal galleries, parallax), SplitText headline reveals, Flip layout transitions, MorphSVG/DrawSVG/MotionPath, Draggable/Inertia/Observer, CustomEase, quickTo cursor followers, Lenis smooth scroll, page transitions (Barba, View Transitions) and award- style landing-page motion in vanilla JS, React (useGSAP), Next.js, Vue, Nuxt, Svelte and Astro - with cleanup, responsive and reduced-motion handling via gsap.matchMedia. Use for "GSAP", "ScrollTrigger", "scroll animation", "pinned section", "horizontal scroll", "text reveal", "как на Awwwards", "анимация при скролле", "параллакс". All GSAP plugins are free (GSAP 3.13+).

whoamnesia/motion-review

Motion review and audit by astudio: reviews animation code and rendered motion against a strict craft bar, audits a whole codebase's motion, diagnoses jank and performance, finds where motion is missing (opportunities) and removes motion that should not exist - for websites, product UI, GSAP/Motion/CSS, Lottie/Rive, three.js and rendered videos. Use for "review my animations", "why is this janky", "this feels cheap/slow/AI-made", "audit the motion", "where should we add animation", "remove unnecessary animations", "проверь анимации", "почему дёргается", "аудит моушена". Default to flagging; approval is earned. Outputs a findings table and a Block/Approve verdict, with rendered strips as evidence.

whoamnesia/ui-motion

Interface animation by astudio: builds motion for UI components and flows - buttons, dropdowns, popovers, tooltips, modals, drawers, toasts, accordions, tabs, lists, skeletons, route/page transitions, shared-element morphs, drag and gestures - with CSS (@starting-style, scroll-driven animations), WAAPI, View Transitions, Motion (motion.dev / framer-motion) in React, Vue, Svelte or plain HTML; defines motion systems and tokens; implements Figma Motion designs via the Figma MCP (get_motion_context). Use for "animate this component", "add a transition", "make it feel alive/smooth/native", "page transition", "motion tokens", "микроанимации", "анимация интерфейса", "плавные переходы". Decides whether something should animate at all before writing code.

Habilidades Relacionadas