28 repositorios
Animations that update their properties in real time based on changes in application state.
Distinct from UI Animations: Distinct from UI Animations: specifically focuses on the dynamic linking between app state and animation properties during execution.
Explore 28 awesome GitHub repositories matching user interface & experience · State-Driven Animations. Refine with filters or upvote what's useful.
lottie-ios is a vector graphics engine and animation framework for iOS that renders animations exported from After Effects as native visual elements. It functions as a renderer that converts animation data into high-fidelity native shapes to maintain small file sizes on mobile devices. The framework provides tools for managing playback, looping, and real-time property updates. It allows for the modification of colors, positions, and keyframe properties of active animations to respond to application state changes. The system parses JSON-based animation data and maps keyframes to native layers
Updates animation properties like colors and positions in real time to reflect changes in application state.
SmartRefreshLayout is a pull-to-refresh framework and gesture interaction library for Android. It provides a scroll view wrapper that integrates interactive refresh headers and loading footers into mobile user interfaces, coordinating synchronized scrolling and touch events. The project features a pluggable architecture for custom refresh indicators and secondary refresh mechanisms. It utilizes damping-based gesture translation and overscroll rebound mechanisms to manage the tactile feel of drag resistance and physics-based animations. The library covers a broad range of interaction logic, i
Triggers specific visual transitions and interpolators based on the current refresh or loading state.
react-motion is a physics-driven animation toolkit and library for React applications. It provides a system for creating fluid user interface transitions by simulating natural spring movement to move elements toward destination values using stiffness and damping parameters. The framework manages the visual entry and exit of components as they mount and unmount within the document structure. It coordinates complex motion patterns, including staggered animations and fluid transitions for items being added, removed, or reordered within dynamic lists. The library covers a broad range of animatio
Maps dynamic application state and data values to visual properties for real-time animation updates.
lottie-react-native is a React Native animation library and cross-platform vector animation engine used to render high-quality animations exported from After Effects via the Lottie file format. It functions as a Lottie animation player that allows mobile applications to display hardware-accelerated animations that maintain visual quality across different screen resolutions. The library serves as a dynamic animation controller, enabling the manipulation of playback, color filters, and text layers in real time. It provides the ability to change animation colors and visuals by applying filters t
Supports animations that update their colors and text in real time based on application state or themes.
RunCat365 is a Windows system tray application that places an animated cat directly on the taskbar, where the cat's running speed reflects real-time CPU load. The project's core identity is a lightweight background process that maps CPU usage percentages to animation frame rates, creating a visual indicator of system performance. The application achieves this by polling CPU load data at fixed intervals through Windows Performance Counters, then driving a frame-based sprite animation whose speed responds to the measured load. It renders the cat animation directly into the taskbar notification
Drives the cat animation speed directly from real-time CPU usage percentages.
Android-PullToRefresh is an Android view component and library designed to implement pull-to-refresh functionality and end-of-list detection for scrollable views within Android applications. It acts as a custom view that manages the animations and listener triggers necessary to update content via user interaction. The library provides mechanisms for triggering refresh actions when a user pulls from the boundaries of a scrollable view and detecting when a user reaches the bottom of a list to facilitate data pagination. It allows for the customization of the refresh indicator's visual theme and
Synchronizes the position and opacity of the refresh indicator with the current scroll state.
PyQt-Fluent-Widgets is a Python GUI component library and framework extension that provides a set of pre-styled UI components following modern Fluent design standards. It replaces standard PyQt controls with a specialized widget set designed for building contemporary desktop applications. The library distinguishes itself by offering advanced layout patterns, such as waterfall grids, loading skeleton screens, and split-view application shells. It provides a comprehensive collection of high-level interface elements, including navigation menu systems, configuration setting cards, and complex vie
Manages visual transitions and hover effects by interpolating properties through a dedicated animation controller.
dc.js is a multi-dimensional analysis tool and visualization framework used to build interactive data dashboards. It functions as a charting library that renders diverse SVG visualizations powered by D3 and integrates natively with Crossfilter to enable coordinated filtering across large datasets. The project is distinguished by its linked-view coordination, where selecting a data range or category in one chart simultaneously updates all other connected views. This allows for dynamic data exploration through dimensional chart linking and coordinated brushing, transforming raw datasets into na
Calculates interpolated visual changes between data states to provide smooth motion during filter updates.
React Move is a declarative animation library for React that animates components by interpolating between start and end states with configurable timing and easing. It provides data-driven transitions for single elements, groups, lists, and SVG elements, supporting staggered timing, custom interpolation for non-numeric values like colors and paths, and drag-and-drop reordering of list items. The library distinguishes itself through its support for custom interpolation functions that replace default numeric interpolation, keyed array reconciliation for tracking items as they enter, update, or l
Animates React components by interpolating between start and end states with configurable timing and easing.
VPet is a virtual companion application and simulation engine that renders interactive animated characters on the Windows desktop. It uses Windows Presentation Foundation for hardware-accelerated 2D graphics and a state-driven animation engine to manage character visuals based on user input and pet state. The project is built as an embeddable .NET library, allowing the simulation to be integrated into other software projects. It features a plugin-based modding system that loads dynamic libraries at runtime to extend behavioral logic, speech, items, and animations. A community workshop distrib
Manages character visuals via a finite state machine that triggers animations based on user interaction and pet state.
MaterialEditText es una librería de componentes de UI para Android y un framework de entrada de formularios móviles utilizado para crear campos de texto que implementan los estándares de Material Design. Proporciona una colección de componentes de entrada con etiquetas flotantes, estados de error y estilos visuales temáticos. La librería permite renderizar campos de texto con etiquetas animadas y texto de ayuda integrado. Admite la adición de iconos de diseño y permite personalizar colores y tipografías para el texto principal, de error y de ayuda. El framework incluye capacidades para la validación de entradas móviles, como la aplicación de conteos mínimos y máximos de caracteres para la entrada de texto.
Triggers label transitions and color shifts by monitoring the focus and content states of the input field.
This is an open-source 3D action-adventure game project built in Unity, providing a complete game development sample with player movement, combat, and exploration mechanics. The project is structured as a full Unity game project containing all assets, scenes, and scripts, designed for learning and extending game development skills through hands-on modification. The project implements core game systems through Unity's built-in features, including layered Animator state machines for character and enemy animation control, Scriptable Objects for modular game configuration, and a component-based e
Controls player and enemy animations through Unity's layered Animator state machines.
BoomMenu es una librería de menús radiales para Android y un framework de animación de UI diseñado para crear botones de acción flotantes expandibles. Proporciona un conjunto de componentes de vista personalizados programables que revelan elementos de submenú en patrones radiales, horizontales o verticales utilizando transformaciones 3D. La librería destaca por su motor de animación de transformación 3D que utiliza easing no lineal, escalado y rotación para crear profundidad durante la expansión del menú. Incluye patrones de diseño especializados para menús estilo "compartir" y un sistema de mapeo basado en coordenadas para un desplazamiento preciso de los elementos. El framework cubre una amplia gama de capacidades de UI, incluyendo la construcción flexible de menús con botones etiquetados, actualizaciones de contenido dinámico y oscurecimiento del fondo para el enfoque visual. Admite la integración en varios componentes de Android como barras de acción, fragmentos y vistas desplazables, mientras proporciona herramientas para el posicionamiento arrastrable y el control programático del estado. Para mantener el rendimiento, el proyecto implementa una caché de recursos de reciclaje de vistas para reutilizar instancias de botones y reducir la creación de objetos durante los ciclos de expansión.
Tracks the progress of expansion and collapse cycles to update the UI based on the animation state.
ComponentKit is a declarative UI framework for building iOS interfaces through composition of small, reusable components. It provides a structured approach to constructing user interfaces where each component is defined as an immutable, pure function of its inputs, enabling predictable rendering and state management. The framework supports both stateless and stateful components, with controllers that can be attached to manage persistent state across component updates. The framework distinguishes itself through its component architecture that emphasizes explicit data flow and compile-time safe
Triggers animations by regenerating the component tree after state or props updates.
Esta es una librería de animación shimmer para Android y un componente de UI utilizado para implementar marcadores de posición (placeholders) que imitan estructuras de diseño durante la carga asíncrona de datos. Funciona como un generador de esqueletos de carga para indicar que el contenido se está obteniendo y aparecerá pronto. La librería proporciona una animación de carga shimmer que aplica efectos de resaltado visual a los componentes de la UI. Esto permite a los desarrolladores reemplazar pantallas en blanco con esqueletos animados para mejorar el rendimiento percibido de la interfaz de usuario.
Relies on a timed value animator to precisely drive the horizontal position of the shimmer highlight.
Dialogic is a dialogue editor and runtime system for the Godot engine that provides a complete framework for creating branching conversations with characters, animations, and state management. At its core, it functions as a branching narrative editor with visual and text-based timeline authoring, a character animation manager that handles portraits and scene positioning, a localization tool that exports timelines to CSV for translation, and an interactive framework that manages player choices, text reveals, voice lines, and dynamic text effects within conversations. What distinguishes this sy
Implements state-driven portrait animation with entry, exit, and expression states controlled by timeline events.
snabbt.js es un framework de movimiento de JavaScript y biblioteca de animación de transformación CSS utilizada para crear animaciones de alto rendimiento para elementos DOM. Funciona como un motor de animación CSS 3D y un kit de herramientas de geometría basado en matrices para calcular traslaciones, rotaciones, escalas y sesgos precisos. El framework proporciona un controlador de animación impulsado por el usuario que permite que el progreso de la animación esté vinculado a la entrada manual del usuario en lugar de la reproducción estándar basada en el tiempo. Permite la simulación de profundidad y perspectiva mediante la animación de elementos HTML en formas tridimensionales. El sistema cubre la orquestación de movimiento a través del encadenamiento de animaciones secuenciadas y el procesamiento de elementos por lotes. Incluye capacidades para suavizado basado en física, animaciones de texto a nivel de carácter y la configuración de orígenes de transformación para manipular la geometría del elemento.
Tracks the final state of one animation to serve as the starting point for subsequent linked movements.
Este proyecto es un sistema de diseño y framework de configuración para crear paneles de control responsivos en Home Assistant. Proporciona un framework de interfaz basado en CSS y un sistema de temas utilizado para definir la apariencia visual y el diseño de las interfaces de automatización del hogar. El sistema se distingue por un enfoque de diseño de múltiples vistas que adapta la interfaz para dispositivos móviles y tabletas montadas en pared en orientaciones vertical y horizontal. Emplea definiciones de UI basadas en configuración y CSS personalizado para implementar efectos visuales avanzados, como animaciones activadas por estado para iconos y ventanas emergentes interactivas activadas por interacciones del usuario. Las capacidades amplias incluyen gestión de diseño de paneles responsivos, temas de interfaz global con plantillas de botones reutilizables y lógica de renderizado condicional para reproductores multimedia y sensores de estado del sistema. El framework también admite elementos interactivos con efectos de inclinación y retroalimentación de audio para pantallas táctiles.
Triggers CSS animations for icons and loading indicators based on real-time device activity states.
Este es el sitio web de documentación integral para el framework de JavaScript progresivo Vue 2. Sirve como referencia técnica y guía de desarrollo para construir interfaces de usuario reactivas y aplicaciones de una sola página. El sitio proporciona una referencia detallada de la API de JavaScript y un directorio de componentes web. Cubre la implementación de arquitecturas basadas en componentes, gestión de estado reactivo y el uso de un DOM virtual para sincronizar el estado de la aplicación con el navegador. La documentación detalla capacidades que incluyen enrutamiento del lado del cliente, manipulación declarativa del DOM y optimizaciones de compilación frontend como renderizado del lado del servidor y precompilación de plantillas. También explica el enfoque del framework para la sincronización de estado, ciclos de vida de componentes y el uso de directivas personalizadas. El contenido se mantiene como una colección de tutoriales y especificaciones, con documentación editada a través de Markdown.
Allows animations to update their properties in real time based on changes in the application state.
SwitchButton es un widget de interruptor de palanca personalizable para crear interruptores de encendido y apagado animados con etiquetas y colores configurables. Sirve como una entrada de formulario interactiva que permite a los usuarios cambiar entre dos opciones opuestas utilizando un componente basado en estados. El widget está diseñado para ser consciente de los gestos, capturando movimientos de deslizamiento horizontal para activar cambios de estado mientras permite que los eventos de desplazamiento vertical pasen al contenedor padre. El componente admite la definición de colores, dimensiones y radios de esquina personalizados tanto para el pulgar del interruptor como para la pista de fondo. Incluye capacidades para gestionar estados de palanca, configurar el texto de la etiqueta y ajustar las velocidades de animación.
Uses interpolation to animate position and color changes based on the binary toggle state.