16 dépôts
Declarative hierarchies of virtual nodes that map to renderable interface elements.
Distinct from Node-Based UI Components: Focuses on the declarative virtual DOM-like tree for terminal rendering rather than node-based visual programming interfaces.
Explore 16 awesome GitHub repositories matching user interface & experience · Virtual Node Trees. Refine with filters or upvote what's useful.
Yoga is an embeddable UI layout library and engine that implements the flexible box model used in web standards. It functions as a cross-platform tool for computing user interface geometry, calculating element sizes and positions without relying on a specific operating system's rendering. The engine provides a portable C++ core to ensure identical layout calculations across Android, iOS, and the web. It utilizes an abstract node interface to separate the layout logic from the host UI framework, allowing it to be integrated into native applications. The system manages interface rendering thro
Implements a virtual tree of nodes to decouple layout logic from native UI frameworks.
Inferno is a virtual DOM UI library and high-performance DOM renderer used for building component-based user interfaces. It functions as a server-side rendering engine and a client-side framework that synchronizes application state with the visual interface through a declarative structure. The project distinguishes itself as a React-compatible UI framework, providing a compatibility layer that allows components designed for other reactive environments to run without modification. Its capability surface covers virtual DOM management, including node diffing and reconciliation, and a full serve
Creates lightweight virtual nodes to build a declarative tree for efficient rendering and updates.
This project is a conceptual guide and implementation of the React Fiber architecture, focusing on concurrent user interface framework logic and incremental rendering patterns. It provides a structural approach to managing asynchronous rendering tasks and a virtual DOM reconciliation strategy to calculate the minimum changes required to synchronize a virtual tree with the interface. The architecture distinguishes itself through a concurrent rendering workflow that splits heavy UI updates into small chunks across multiple frames. This system utilizes an interruptible rendering pipeline and pri
Compares new node trees against previous versions to find the minimum updates needed to refresh the display.
Snabbdom is a virtual DOM library and DOM diffing engine used to create and update user interfaces by synchronizing a virtual tree with the browser. It functions as a modular UI framework that provides a system for generating virtual nodes and transforming them into actual browser elements. The project features a modular architecture that separates core rendering logic from optional components. It includes a dedicated SVG rendering engine for managing scalable vector graphics within a virtualized document object model. The library covers a broad range of capabilities, including lifecycle hoo
Provides a mechanism to execute arbitrary code during specific stages of a virtual node's life.
Opentui is a terminal user interface framework for building interactive command line applications. It provides a component-based system featuring a flexbox layout engine, a virtual node component tree, and a low-level 2D cell array renderer. The project is distinguished by a sophisticated keyboard binding engine that maps complex multi-stroke sequences and chords to named commands using prioritized, reactive layers. It also implements a plugin architecture that allows external modules to inject custom UI components into designated layout slots and extend input logic at runtime. Its capabilit
Composes the user interface using a virtual node component tree that maps to renderable terminal elements.
Semantic est une bibliothèque basée sur Haskell et un outil en ligne de commande conçu pour l'analyse de code source polyglotte. Il fonctionne comme un framework d'analyse statique et un parseur d'arbres de syntaxe abstraite (AST) capable de convertir plusieurs langages de programmation en arbres structurés basés sur des définitions de grammaire. Le système se distingue par son moteur de comparaison sémantique qui détecte les changements structurels et fonctionnels entre les versions de code, plutôt que de se limiter aux différences textuelles. Il permet une analyse transversale en traduisant les langages sources en une représentation intermédiaire polyglotte unifiée. Le framework offre une large gamme de capacités pour parser des langages comme Rust, Go, Python, Ruby, PHP, TypeScript et TSX. Il couvre l'analyse sémantique via le mappage de portée, l'extraction de symboles, la génération de graphes sémantiques, ainsi que des outils d'analyse de motifs et d'évaluation du comportement des programmes. L'ensemble d'outils inclut des utilitaires en ligne de commande pour standardiser la mise en page des fichiers sources Haskell.
Employs specialized tree-based diffing to identify structural and semantic changes between hierarchical versions of source code.
Craft.js is a framework for building extensible drag-and-drop page editors using React components and serializable state management. It provides the core infrastructure to construct custom page builders where users can compose layouts by dragging, dropping, and repositioning elements within a structured editor environment. The framework manages editor state through a component-based node tree, where each user element is represented as an internal node storing its type, props, and parent relationships. This state is managed via React Context and can be serialized to JSON for persistence and sh
Triggers a callback whenever any node's value in the editor state is modified for reactive updates.
Epoxy is an Android library for building complex RecyclerView screens using a model-driven approach. It generates RecyclerView adapter models at compile time from annotated custom views, data binding layouts, or view holders, eliminating the manual boilerplate typically associated with view holders and adapters. The library provides a diffing engine that automatically compares model lists and applies minimal updates with animations for insertions, removals, and moves. The library distinguishes itself through its controller-based model building, where a controller class with a buildModels meth
Associates listeners with keys so callbacks are automatically updated when the key's value changes.
Didact is a virtual DOM UI framework and functional component library. It utilizes a concurrent rendering engine and a fiber-based reconciliation library to synchronize a visual interface with data changes. The framework implements a concurrent rendering engine that breaks rendering work into resumable chunks. This prevents long-running tasks from blocking the main browser thread by dividing interface updates into small units of work. The system covers virtual DOM implementation and fiber architecture, using a linked-list fiber tree to track element relationships. It manages function compone
Implements the transformation of types and properties into descriptor objects to build the virtual tree.
Vue Flow is a TypeScript library for building interactive node-based editors and flowcharts. It provides the core infrastructure for creating diagrams where users can drag, select, and connect nodes with edges, supporting pan and zoom navigation of the canvas. The library offers extensive control over graph behavior and appearance, including the ability to customize connection lines, define custom edge types, and configure zoom constraints and viewport defaults. It includes built-in components like a minimap for navigation, zoom controls, and a fit-view button, along with features for node re
Disables automatic change handling and lets users validate or reject node and edge modifications.
Ce projet est un framework de développement multiplateforme et un boilerplate d'application conçu pour construire des applications mobiles, de bureau et web à partir d'une base de code partagée unique. Il fonctionne comme un outil de développement React Native, utilisant des composants déclaratifs pour rendre des interfaces utilisateur spécifiques à la plateforme tout en maintenant une logique métier cohérente dans tous les environnements pris en charge. Le framework se distingue en centralisant les règles d'application de base et la gestion des données, garantissant des résultats fonctionnels identiques quel que soit l'appareil cible. Il utilise un système de résolution de fichiers au moment de la compilation qui permet aux développeurs de composer des interfaces spécifiques à la plateforme tout en partageant la logique sous-jacente, facilitant une approche unifiée du développement multiplateforme. L'architecture prend en charge un cycle de vie de développement complet, y compris l'exécution d'une suite de tests unifiée pour vérifier que la logique de l'application reste cohérente sur les cibles mobiles, de bureau et web. Le projet fournit une structure préconfigurée pour effectuer des calculs mathématiques et gérer l'état, permettant aux développeurs de maintenir une fonctionnalité fiable sur diverses plateformes d'appareils.
Uses tree-based diffing algorithms to efficiently update the user interface.
NaughtyAttributes est une collection d'attributs personnalisés pour l'inspecteur de l'éditeur Unity qui permet la validation de champs, l'exposition de propriétés non sérialisées et l'ajout de contrôles UI personnalisés. Il fonctionne comme une bibliothèque d'extension pour personnaliser la façon dont les champs sont dessinés et se comportent au sein de l'interface de l'inspecteur sans nécessiter l'écriture de scripts d'éditeur personnalisés. La bibliothèque fournit des outils pour créer des éléments interactifs tels que des boutons qui exécutent des méthodes spécifiques, ainsi que des contrôles de saisie spécialisés comme des curseurs et des menus déroulants. Elle permet l'affichage de propriétés natives et de champs non sérialisés pour le débogage et la surveillance de l'état du jeu en temps réel. La boîte à outils inclut des capacités pour la validation de données via des vérifications de référence obligatoires et le bridage de valeurs numériques. Elle prend également en charge les callbacks de changement de champ et le rendu d'aperçus d'assets pour les sprites et les prefabs directement au sein de l'inspecteur.
Triggers specific functions automatically whenever a field value is modified within the inspector.
Ceci est le site web de documentation complet pour le framework JavaScript progressif Vue 2. Il sert de référence technique et de guide de développement pour la création d'interfaces utilisateur réactives et d'applications monopage. Le site fournit une référence API JavaScript détaillée et un répertoire de composants web. Il couvre l'implémentation d'architectures basées sur des composants, la gestion d'état réactive et l'utilisation d'un DOM virtuel pour synchroniser l'état de l'application avec le navigateur. La documentation détaille des capacités incluant le routage côté client, la manipulation déclarative du DOM et les optimisations de build frontend telles que le rendu côté serveur et la précompilation de templates. Elle explique également l'approche du framework en matière de synchronisation d'état, de cycles de vie des composants et l'utilisation de directives personnalisées. Le contenu est maintenu sous forme d'une collection de tutoriels et de spécifications, avec une documentation éditée via Markdown.
Allows creating virtual DOM nodes using functions as a programmatic alternative to string templates.
Gods-pen est un constructeur de page visuel Vue.js et une plateforme de landing page no-code pour créer des pages marketing mobiles responsives. Il fonctionne comme un système de gestion de contenu (CMS) conteneurisé et un framework de composants extensible, permettant la conception et la publication de pages avec collecte de formulaires intégrée et suivi analytique. La plateforme dispose d'un gestionnaire de marketplace de composants pour télécharger, importer et monétiser des éléments d'interface utilisateur réutilisables à travers différents projets. Elle fournit un système complet pour le développement de composants personnalisés, utilisant un système de scaffolding et un mappage de propriétés piloté par schéma pour générer automatiquement des contrôles d'éditeur visuel et des interfaces de configuration. Le système couvre la composition de page visuelle via un éditeur drag-and-drop, la gestion de mise en page pour les modales et carrousels, et une bibliothèque d'animations CSS avec prévisualisations image par image. Il inclut une gestion de projet par équipe avec des permissions basées sur les rôles, la capture de données de visiteurs et des analyses de performance marketing. Le projet supporte l'installation auto-hébergée sur des serveurs privés en utilisant des configurations de déploiement conteneurisées.
Uses a recursive node-tree rendering engine to transform page layouts and component parameters into functional web pages.
Ce projet est un formateur et visualiseur JSON basé sur le web conçu pour le débogage structurel et l'exploration de données. Il transforme les chaînes JSON brutes en une structure arborescente lisible présentant la coloration syntaxique, des guides d'indentation et des nœuds repliables. L'outil fournit un visualiseur de données pour comparer les réponses brutes du serveur avec les représentations analysées. Il inclut également un exportateur de console qui envoie les données JSON analysées vers la console de développement du navigateur en tant que variable globale pour une inspection et une manipulation immédiates. Le système couvre l'inspection des réponses API et l'analyse de structure JSON, permettant aux utilisateurs de basculer entre le texte brut et les vues formatées pour vérifier des données imbriquées complexes.
Transforms nested JSON structures into a hierarchical DOM tree using recursive rendering.
This project is an HTML-to-native renderer and cross-platform UI component that transforms web-standard markup into native mobile components. It functions as a CSS-to-native style engine and a customizable HTML parser, allowing web content to be displayed in mobile applications without the use of a full web view. The library is distinguished by its ability to intercept and modify the HTML DOM tree before rendering, enabling the injection of custom components, the filtering of specific nodes, and the overriding of default element translation models. It also implements a sophisticated style res
Intercepts the virtual node tree lifecycle to modify DOM elements or inject components before rendering.