4 repositorios
Rendering techniques that calculate changes between frames to minimize terminal redraws.
Distinguishing note: Existing candidates cover network deltas or file diffs, not terminal frame diffing for flicker reduction
Explore 4 awesome GitHub repositories matching user interface & experience · Diff-Based Screen Updates. Refine with filters or upvote what's useful.
CollectionKit es un framework para construir rejillas y listas desplazables de alto rendimiento en plataformas Apple. Proporciona motores para la sincronización declarativa de estados, renderizado dinámico de rejillas y composición de datos multisección dentro de vistas de colección. El framework cuenta con un sincronizador declarativo que calcula las diferencias de datos para actualizar los elementos de la interfaz sin recargar toda la vista. Incluye un motor de diseño de rejilla dinámico para renderizar datos en patrones de flujo o cascada, y un compositor de datos que combina diferentes fuentes de datos en una sola vista con proveedores de sección independientes. El sistema soporta la interpolación de posiciones y propiedades de elementos para crear animaciones durante cambios de diseño, adiciones y eliminaciones. Gestiona la organización de datos en flujos visuales estructurados mediante configuraciones de diseño de celdas y renderizado optimizado para el desplazamiento.
Provides a declarative synchronizer that calculates data differences to update only modified interface elements.
Westore es un framework MVVM para mini programas y una capa de lógica multiplataforma diseñada para aislar el comportamiento de la aplicación de los entornos de renderizado específicos de la plataforma. Funciona como un gestor de estado desacoplado y un motor de enlace de datos que separa la lógica de negocio de la interfaz de usuario. El framework utiliza una arquitectura modelo-vista-viewModel para mantener una capa de modelo portátil, permitiendo que la lógica de negocio se pruebe utilizando objetos simulados (mock objects) sin una interfaz de usuario en ejecución. Emplea un proceso de diffing para calcular la ruta de datos más corta y actualizar automáticamente la interfaz de usuario. El sistema cubre el desarrollo de lógica de negocio headless y la gestión de estado para mini programas, centrándose en separar la lógica de la vista para permitir pruebas unitarias y un comportamiento de aplicación portátil.
Calculates the minimum required UI updates by diffing data state changes to optimize rendering performance.
Este proyecto es un componente de presentación de React diseñado para crear deslizadores de código animados y recorridos paso a paso. Funciona como una herramienta de presentación de código que permite a los usuarios resaltar la sintaxis y realizar transiciones entre diferentes versiones de una base de código durante demostraciones técnicas. La herramienta permite la creación de recorridos de código animados mediante la renderización de instantáneas de código que transicionan a través de cambios incrementales. Estas secuencias se navegan mediante entradas de teclado, permitiendo a un presentador avanzar a través de los pasos del código para explicar los cambios de lógica en una demostración en vivo. El sistema proporciona capacidades para flujos de trabajo de presentaciones técnicas, incluyendo el diseño de tutoriales de programación y materiales de educación para desarrolladores. Maneja la estructura visual de los fragmentos de código y gestiona las transiciones de estado entre diferentes versiones del texto fuente.
Calculates incremental changes between code versions to render animated visual updates during a step-by-step presentation.
Mosaic is a declarative terminal user interface framework and display engine. It provides a toolkit for building interactive command-line applications by synchronizing a data model with the terminal screen to minimize manual redraws. The library functions as a layout engine for designing structured visual interfaces and real-time displays. It enables the development of interactive console programs, such as system monitors and games, by managing responsive user input and dynamic output updates.
Calculates the delta between screen states to reduce flicker by only rewriting changed characters.