16 repository-uri
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 este o bibliotecă bazată pe Haskell și un instrument CLI conceput pentru analiza poliglotă a codului sursă. Funcționează ca un framework de analiză statică a programelor și ca un parser poliglot de arbori de sintaxă abstractă (AST), care convertește codul din mai multe limbaje de programare în arbori de sintaxă structurați, pe baza definițiilor gramaticale. Sistemul se distinge printr-un motor de comparare semantică a codului care detectează modificările structurale și de logică între versiuni, în loc să se bazeze pe diferențe textuale. De asemenea, permite analiza între sintaxe diferite prin traducerea limbajelor de nivel înalt într-o reprezentare intermediară poliglotă unificată. Framework-ul oferă o suită largă de capabilități pentru parsarea limbajelor precum Rust, Go, Python, Ruby, PHP, TypeScript și TSX. Acoperă analiza semantică prin maparea scopului codului, extragerea simbolurilor și generarea de grafuri semantice, alături de instrumente pentru analiza modelelor și evaluarea comportamentului programelor. Setul de instrumente include utilitare CLI pentru standardizarea layout-ului fișierelor sursă 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.
Acest proiect este un framework de dezvoltare cross-platform și un boilerplate de aplicație conceput pentru a construi aplicații mobile, desktop și web dintr-un singur codebase partajat. Funcționează ca un instrument de dezvoltare React Native, utilizând componente declarative pentru a randa interfețe de utilizator specifice platformei, menținând în același timp o logică de business consistentă în toate mediile suportate. Framework-ul se distinge prin centralizarea regulilor de bază ale aplicației și a gestionării datelor, asigurând rezultate funcționale identice indiferent de dispozitivul țintă. Utilizează un sistem de rezoluție a fișierelor la momentul build-ului care permite dezvoltatorilor să compună interfețe specifice platformei în timp ce partajează logica subiacentă, facilitând o abordare unificată a dezvoltării cross-platform. Arhitectura susține un ciclu de viață complet de dezvoltare, incluzând execuția unei suite de teste unificate pentru a verifica dacă logica aplicației rămâne consistentă pe țintele mobile, desktop și web. Proiectul oferă o structură preconfigurată pentru efectuarea calculelor matematice și gestionarea stării, permițând dezvoltatorilor să mențină o funcționalitate fiabilă pe diverse platforme de dispozitive.
Uses tree-based diffing algorithms to efficiently update the user interface.
NaughtyAttributes este o colecție de atribute personalizate pentru inspectorul Unity Editor care permite validarea câmpurilor, expunerea proprietăților non-serializate și adăugarea de controale UI personalizate. Funcționează ca o bibliotecă de extensie pentru a personaliza modul în care câmpurile sunt desenate și se comportă în interfața inspectorului, fără a necesita scrierea de scripturi editor personalizate. Biblioteca oferă instrumente pentru crearea de elemente interactive, cum ar fi butoane care execută metode specifice, precum și controale de input specializate, cum ar fi slidere și dropdown-uri. Permite afișarea proprietăților native și a câmpurilor non-serializate pentru debugging și monitorizarea stării jocului în timp real. Toolkit-ul include capabilități pentru validarea datelor prin verificări obligatorii de referință și limitarea valorilor numerice (clamping). De asemenea, suportă callback-uri la schimbarea câmpurilor și randarea previzualizărilor de asset-uri pentru sprite-uri și prefab-uri direct în inspector.
Triggers specific functions automatically whenever a field value is modified within the inspector.
Acesta este site-ul de documentație cuprinzător pentru framework-ul JavaScript progresiv Vue 2. Acesta servește drept referință tehnică și ghid de dezvoltare pentru construirea interfețelor de utilizator reactive și a aplicațiilor single-page. Site-ul oferă o referință detaliată a API-ului JavaScript și un director de componente web. Acoperă implementarea arhitecturilor bazate pe componente, gestionarea stării reactive și utilizarea unui DOM virtual pentru a sincroniza starea aplicației cu browserul. Documentația detaliază capabilități precum rutarea client-side, manipularea declarativă a DOM-ului și optimizările de build frontend, cum ar fi randarea server-side și precompilarea template-urilor. De asemenea, explică abordarea framework-ului față de sincronizarea stării, ciclurile de viață ale componentelor și utilizarea directivelor personalizate. Conținutul este menținut ca o colecție de tutoriale și specificații, cu documentația editată prin Markdown.
Allows creating virtual DOM nodes using functions as a programmatic alternative to string templates.
Gods-pen este un builder vizual de pagini Vue.js și o platformă no-code de landing page-uri pentru crearea de pagini de marketing mobile responsive. Funcționează ca un sistem de gestionare a conținutului (CMS) dockerizat și un framework de componente extensibil, permițând designul și publicarea paginilor cu colectare de formulare integrată și urmărire analitică. Platforma dispune de un manager de marketplace de componente pentru încărcarea, descărcarea și monetizarea elementelor UI reutilizabile în diferite proiecte. Oferă un sistem cuprinzător pentru dezvoltarea de componente personalizate, utilizând un sistem de scaffolding și maparea proprietăților bazată pe schemă pentru a genera automat controale de editor vizual și interfețe de configurare. Sistemul acoperă compoziția vizuală a paginilor prin editorul drag-and-drop, gestionarea layout-ului pentru modale și caruseluri, și o bibliotecă de animații CSS cu previzualizări cadru cu cadru. Include gestionarea proiectelor pe echipe cu permisiuni bazate pe roluri, capturarea datelor vizitatorilor și analize de performanță a marketingului. Proiectul suportă instalarea self-hosted pe servere private folosind configurații de deployment containerizate.
Uses a recursive node-tree rendering engine to transform page layouts and component parameters into functional web pages.
Acest proiect este un formator și vizualizator JSON bazat pe web, conceput pentru depanarea structurală și explorarea datelor. Transformă șirurile JSON brute într-o structură de arbore lizibilă, cu evidențierea sintaxei, ghiduri de indentare și noduri colapsabile. Instrumentul oferă un vizualizator de date pentru compararea răspunsurilor brute ale serverului cu reprezentările parsate. Include, de asemenea, un exportator de consolă care trimite datele JSON parsate către consola de dezvoltator a browserului ca variabilă globală pentru inspecție și manipulare imediată. Sistemul acoperă inspecția răspunsurilor API și analiza structurii JSON, permițând utilizatorilor să comute între textul brut și vizualizările formatate pentru a verifica datele imbricate complexe.
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.