Guía Práctica de Animación en React

Bookmark
Rate this content

Pequeñas animaciones pueden hacer que las UIs sean más agradables y mejorar la experiencia del usuario. En esta charla, exploraremos cómo agregar estas animaciones a tus aplicaciones de React, utilizando desde simples transiciones de CSS hasta un movimiento más complejo basado en spring.

Recorreremos ejemplos prácticos para mostrar cómo estas animaciones pueden mejorar la experiencia del usuario sin interponerse en el camino. Además, discutiremos cómo mantenerlas funcionando sin problemas y asegurarnos de que sean accesibles para todos.

This talk has been presented at React Summit US 2025, check out the latest edition of this React Conference.

Kateryna Porshnieva
Kateryna Porshnieva
27 min
21 Nov, 2025

Comments

Sign in or register to post your comment.
Video Summary and Transcription
La importancia de las animaciones en mejorar la experiencia del usuario al cerrar la brecha entre las expectativas del usuario y las interfaces digitales. Ejemplos prácticos de creación de animaciones utilizando transiciones de CSS y keyframes para efectos suaves y complejos. Utilización de funciones de temporización con curvas cúbicas de Bezier para diversas animaciones y consideraciones de accesibilidad. Introducción de Vue Transitions como una potente API web para animaciones fluidas con amplio soporte de navegadores. Personalización de Vue Transitions para efectos únicos, optimización del uso con nombres únicos y desactivación global, y transición a animaciones basadas en Spring para interacciones naturales de la UI. Exploración de FramerMotion y Motion Library para animaciones en React, configuración del comportamiento de spring para efectos suaves, y mejora de animaciones con Motion y CSS para una mejor experiencia del usuario.

1. Exploring the Power of Animations

Short description:

La importancia de las animaciones para cerrar la brecha entre las expectativas del usuario y las interfaces digitales. Ejemplos que muestran cómo la animación puede mejorar la experiencia del usuario al agregar tangibilidad, dirección, alegría y conexión personal. Enfatizando la importancia de las animaciones para hacer que las interfaces de usuario se sientan más realistas y atractivas.

Hola a todos. Estoy muy emocionado de hablarles sobre animaciones. En nuestras interfaces web, la mayoría de los cambios ocurren instantáneamente. Haces clic en un botón y luego boom, algún contenido simplemente se teletransporta a la pantalla. Pero así no es como funcionan las cosas en el mundo real, ¿verdad? Normalmente, los cambios de estado implican algún tipo de movimiento y nuestros cerebros han sido programados para entenderlo porque hemos estado observando la física del mundo que nos rodea toda nuestra vida. Y esto puede hacer que las interfaces se sientan un poco mecánicas y desconectadas de cómo naturalmente esperamos que las cosas se comporten. Y la animación puede ayudar a cerrar esa brecha.

Puede ayudar a hacer que las interfaces de usuario se sientan más tangibles y reales y hacer cosas poderosas para la experiencia del usuario. Como aquí en la aplicación Apple Photos, cuando toco una imagen, se escala exactamente desde el lugar donde toqué, creando esta clara conexión entre la interacción y el resultado final. O esta animación cuando inicias sesión en la cuenta de Netflix donde el avatar se anima en la barra de herramientas. Al hacer eso, también comunica dónde puedes cambiar tu cuenta más tarde después de haber iniciado sesión. O piensa en la interfaz del calendario donde al hacer clic entre los botones de navegación, el contenido se desliza hacia la izquierda o hacia la derecha, comunicando dirección y dándote retroalimentación visual de hacia qué lado te estás moviendo.

Nuestros cerebros también están programados para detectar movimiento y Figma lo utiliza sacudiendo el cuadro de comentarios cuando intentas descartar un comentario sin terminar. O mira cómo Airbnb resalta información importante para los clientes cuando buscan propiedades. Si la animación no estuviera allí, sería realmente fácil pasarlo por alto. La animación también se puede usar para agregar un poco de alegría, fantasía y deleite en una interfaz de usuario que de otro modo sería estática. Mira estos iconos animados en 3D en Airbnb. O esta animación de personajes en Notion AI. Cosas como esta pueden parecer pequeñas, pero crean una conexión personal entre el usuario y la interfaz de usuario, y también les ayudan a sentirse alegres cuando están usando tu producto. Especialmente ahora cuando se vuelve cada vez más fácil generar interfaces de usuario usando herramientas de IA, la animación y mucha de esta atención al detalle realmente pueden diferenciar tu producto entre otros.

2. Mastering CSS Animations

Short description:

Explorando las animaciones CSS: Ejemplos prácticos sobre la creación de animaciones, utilizando transiciones CSS y keyframes para animaciones suaves y complejas con funciones de temporización.

Como desarrolladores, tenemos bastantes herramientas a nuestra disposición para crear animaciones. Tenemos CSS y algunas APIs de JavaScript y APIs de la plataforma web y muchas bibliotecas. En esta charla exploraremos bastantes ejemplos prácticos sobre cómo podemos agregar movimiento significativo en nuestras interfaces de usuario y cómo podemos usar todas estas herramientas para hacerlo. Pero primero permítanme presentarme. Mi nombre es Katrina. Soy originalmente ucraniana, pero actualmente estoy sintonizando desde Tallin, Estonia. Y trabajo de forma remota en Buffer, donde dirijo nuestra dirección de front-end. Y últimamente en Buffer he estado invirtiendo cada vez más en detalles de la interfaz de usuario como este. Tenemos bastante contenido para cubrir, así que comencemos.

Y comencemos con la animación CSS. Esta es la herramienta más accesible para crear animaciones que tenemos, y es una gran base para la mayoría de las animaciones que vas a crear. En CSS, generalmente hay dos formas principales de crear animaciones. Podemos usar transiciones CSS y animaciones CSS usando keyframes. Las transiciones son las más simples, nos permiten animar propiedades cuando cambian. Como aquí estamos animando la opacidad durante una duración de 300 milisegundos al pasar el ratón. Tomando valores de inicio y fin, el navegador luego interpola todos los valores intermedios para crear una transición suave. Este proceso también se llama animación tween, de estados intermedios que el navegador necesita calcular. De esta manera podemos animar cualquier propiedad que pueda ser interpolada como transformaciones, cambios de opacidad, colores, relleno, ancho y altura, etc.

Pero a veces cuando queremos animar más que entre los dos estados, es ahí donde entran los keyframes y las animaciones CSS. Nos permiten crear animaciones reutilizables con múltiples pasos. Por ejemplo, aquí tenemos una animación de giro que aplicamos al spinner, pero luego podemos aplicar la misma animación a un elemento completamente diferente en diferentes contextos. Los keyframes son geniales para cualquier animación de entrada y salida, por ejemplo, como aquí. Nota que estoy creando un keyframe parcial donde solo defino el keyframe de inicio o fin, y luego el navegador llenará el espacio usando los propios estilos de los elementos. Luego también podemos aplicar diferentes animaciones para abrir y cerrar. Y también mira cómo aquí estoy usando una duración más larga para abrir que para cerrar. Hace que cerrar el menú se sienta mucho más rápido. También podemos crear animaciones complejas de múltiples pasos usando keyframes, como aquí, donde sacudimos el elemento rotándolo y moviéndolo varias veces a lo largo de la animación. Y luego al aplicarlo a la caja común, podemos recrear la misma animación de Figma que vimos al principio. Una gran parte que puede hacer que las animaciones CSS se sientan mucho más realistas y naturales son las funciones de temporización. Hay cinco funciones de temporización integradas y ease es la predeterminada, y esto realmente puede afectar mucho cómo se siente la animación.

Check out more articles and videos

We constantly think of articles and videos that might spark Git people interest / skill us up or help building a stellar career

Vue: Actualizaciones de Características
Vue.js London 2023Vue.js London 2023
44 min
Vue: Actualizaciones de Características
Top Content
The Talk discusses the recent feature updates in Vue 3.3, focusing on script setup and TypeScript support. It covers improvements in defining props using imported types and complex types support. The introduction of generic components and reworked signatures for defined components provides more flexibility and better type support. Other features include automatic inference of runtime props, improved define emits and defined slots, and experimental features like reactive props destructure and define model. The Talk also mentions future plans for Vue, including stabilizing suspense and enhancing computer invalidations.
El Potencial Caprichoso de los Marcos de Trabajo de JavaScript
React Summit US 2023React Summit US 2023
28 min
El Potencial Caprichoso de los Marcos de Trabajo de JavaScript
Top Content
The speaker discusses the whimsical and detailed work of Stripe, particularly their interactive and dynamic pages. They explain the use of React for building whimsical details and tracking mouse position. The speaker introduces React Spring for smooth animation and React3 Fiber for creating a 3D egg model. They also mention the use of Framer Motion and React server components for animating CSS properties.
Accesibilidad en Discord
React Advanced 2021React Advanced 2021
22 min
Accesibilidad en Discord
Top Content
This Talk discusses the accessibility efforts at Discord, focusing on keyboard navigation and the challenges faced with implementing focus rings and outlines. The speaker showcases a unified focus ring system and a saturation slider to address accessibility concerns. They also highlight the implementation of role colors and the use of CSS filters for accessibility improvements. The Talk concludes with insights on runtime accessibility checking and the development of a performant core runtime system for checking accessibility issues.
Animaciones Emocionales y Funcionales de la Interfaz de Usuario en React
React Day Berlin 2022React Day Berlin 2022
28 min
Animaciones Emocionales y Funcionales de la Interfaz de Usuario en React
Today's Talk discussed the importance of UI animations in React, both functional and emotional. Examples were given using CSS and Framer Motion, with a focus on user feedback and accessibility. Design guidelines and animation usage were highlighted, as well as the consideration of negative emotions in animations. The Talk also touched on designing 404 error pages and concluded with gratitude to the audience and organizers.
Futuro de los Frameworks Frontend Charla Informal
React Summit 2024React Summit 2024
28 min
Futuro de los Frameworks Frontend Charla Informal
Fred K. Schott
Minko Gechev
Ryan Carniato
Daniel Afonso
Aakansha Doshi
Tim Neutkens
6 authors
Signals are being adopted by popular frameworks, enabling code reuse and improved tooling. While merging between frameworks is unlikely, they are learning from each other and adopting shared practices. It is important to embrace the diversity of frameworks and libraries. Instead of merging, focus on standardizing the principles behind frameworks. Consider tradeoffs and benefits when choosing a framework, and explore different technologies to learn new ideas.
AI + UX: Diseño de Producto para Experiencias Inteligentes
C3 Dev Festival 2024C3 Dev Festival 2024
28 min
AI + UX: Diseño de Producto para Experiencias Inteligentes
Premium
AI design challenges include bias, safety, and security. Trust and transparency are important in AI. Design principles for AI include user control, fighting bias, and promoting good decision-making. AI can enable the design process and investors expect to see it included in products. AI empowers individuals to create and share ideas, but managing expectations is crucial.

Workshops on related topic

Cómo crear arte generativo increíble con código JavaScript simple
JS GameDev Summit 2022JS GameDev Summit 2022
165 min
Cómo crear arte generativo increíble con código JavaScript simple
Top Content
Workshop
Frank Force
Frank Force
En lugar de dibujar manualmente cada imagen como en el arte tradicional, los artistas generativos escriben programas que son capaces de producir una variedad de resultados. En esta masterclass aprenderás cómo crear arte generativo increíble usando solo un navegador web y un editor de texto. Comenzando con conceptos básicos y avanzando hacia la teoría avanzada, cubriremos todo lo que necesitas saber.
Accesibilidad web para Ninjas: Un enfoque práctico para crear aplicaciones web accesibles
React Summit 2023React Summit 2023
109 min
Accesibilidad web para Ninjas: Un enfoque práctico para crear aplicaciones web accesibles
Workshop
Asaf Shochet Avida
Eitan Noy
2 authors
En este masterclass práctico, te proporcionaremos las herramientas y técnicas que necesitas para crear aplicaciones web accesibles. Exploraremos los principios del diseño inclusivo y aprenderemos cómo probar nuestros sitios web utilizando tecnología de asistencia para asegurarnos de que funcionen para todos.
Cubriremos temas como el marcado semántico, los roles de ARIA, los formularios y la navegación accesibles, y luego nos sumergiremos en ejercicios de codificación donde podrás aplicar lo que has aprendido. Utilizaremos herramientas de prueba automatizadas para validar nuestro trabajo y asegurarnos de cumplir con los estándares de accesibilidad.
Al final de este masterclass, estarás equipado con el conocimiento y las habilidades para crear sitios web accesibles que funcionen para todos, y tendrás experiencia práctica utilizando las últimas técnicas y herramientas para el diseño inclusivo y las pruebas. ¡Únete a nosotros en este increíble masterclass de codificación y conviértete en un ninja de la accesibilidad web y el diseño inclusivo!
Pruebas automatizadas de accesibilidad con jest-axe y Lighthouse CI
TestJS Summit 2021TestJS Summit 2021
85 min
Pruebas automatizadas de accesibilidad con jest-axe y Lighthouse CI
Workshop
Bonnie Schulkin
Bonnie Schulkin
¿Incluyen tus pruebas automatizadas verificaciones de accesibilidad? Este masterclass cubrirá cómo comenzar con jest-axe para detectar violaciones de accesibilidad basadas en código, y Lighthouse CI para validar la accesibilidad de las páginas completamente renderizadas. Ninguna cantidad de pruebas automatizadas puede reemplazar las pruebas manuales de accesibilidad, pero estas verificaciones se asegurarán de que tus probadores manuales no estén haciendo más trabajo del necesario.
Seguimiento de errores y ralentizaciones en Node + JavaScript utilizando Sentry
Node Congress 2022Node Congress 2022
53 min
Seguimiento de errores y ralentizaciones en Node + JavaScript utilizando Sentry
Workshop
Neil Manvar
Neil Manvar
Repasaremos la configuración de Sentry paso a paso para obtener visibilidad en nuestro frontend y backend. Una vez integrado, rastrearemos y solucionaremos errores y transacciones que se muestren en Sentry desde nuestros servicios para comprender por qué/dónde/cómo ocurrieron errores y ralentizaciones en nuestro código de aplicación.
Accesibilidad web en aplicaciones JavaScript
React Summit 2022React Summit 2022
161 min
Accesibilidad web en aplicaciones JavaScript
Workshop
Sandrina Pereira
Sandrina Pereira
A menudo vemos que JavaScript daña la accesibilidad de un sitio web. En esta masterclass, aprenderás cómo evitar errores comunes y cómo utilizar JS a tu favor para mejorar la accesibilidad de tus aplicaciones web.
En esta masterclass exploraremos múltiples ejemplos del mundo real con problemas de accesibilidad, y aprenderás cómo hacer que funcionen para las personas que utilizan un mouse o un teclado. También aprenderás cómo se utilizan los lectores de pantalla, ¡y te mostraré que no hay razón para tener miedo de usar uno!
Únete a mí y déjame mostrarte cómo la accesibilidad no limita tus soluciones o habilidades. ¡Al contrario, las hace más inclusivas!
Al final, serás capaz de:- Comprender los principios de WCAG y cómo están organizados- Conocer casos comunes en los que JavaScript es esencial para la accesibilidad- Crear enlaces, botones y elementos conmutables inclusivos- Utilizar regiones en vivo para errores y estados de carga- Integrar la accesibilidad en el flujo de trabajo de tu equipo de inmediato- Darte cuenta de que crear sitios web accesibles no es tan difícil como parece ;)
Creando aplicaciones React Native accesibles
React Summit Remote Edition 2021React Summit Remote Edition 2021
91 min
Creando aplicaciones React Native accesibles
Workshop
Scott Vinkle
Scott Vinkle
React Native es un framework utilizado para crear aplicaciones nativas de iOS y Android de una manera con la que los desarrolladores web ya pueden estar familiarizados. Pero, ¿cómo asegurarse de que tus aplicaciones React Native sean inclusivas y utilizables para todos? Scott compartirá consejos sobre cómo probar y construir aplicaciones React Native con accesibilidad integrada.