18 dépôts
Systems that monitor data modifications to trigger updates only when state changes occur.
Distinguishing note: Focuses on performance-oriented state tracking, distinct from UI-specific data binding.
Explore 18 awesome GitHub repositories matching software engineering & architecture · Reactive Change Detection. Refine with filters or upvote what's useful.
Vue est un framework JavaScript progressif basé sur des composants, conçu pour construire des interfaces utilisateur réactives et des applications monopage. Il se concentre sur un système de modèles déclaratif qui transforme le HTML en fonctions de rendu efficaces, permettant aux développeurs d'organiser des interfaces complexes en unités isolées et réutilisables qui se synchronisent automatiquement avec l'état de l'application. Le framework se distingue par un système de réactivité de suivi des dépendances qui surveille l'accès aux données pendant le rendu pour déclencher des mises à jour précises. Il fournit une architecture flexible qui prend en charge à la fois l'adoption incrémentale en tant que bibliothèque légère et le développement d'applications à grande échelle. Les développeurs peuvent tirer parti d'un modèle d'extensibilité robuste basé sur des plugins pour injecter une logique globale, tandis que la réconciliation du DOM virtuel du framework garantit des mises à jour d'interface efficaces en calculant des mutations minimales. Au-delà de ses capacités de rendu de base, le projet inclut une suite complète d'outils pour gérer l'état de l'application, le routage basé sur les URL et le rendu côté serveur. Il offre un support étendu pour la composition de composants, la distribution de contenu et la gestion d'animation, aux côtés de mesures de sécurité intégrées comme l'échappement automatique du contenu pour prévenir les vulnérabilités courantes. Le framework est distribué avec des déclarations de type officielles pour prendre en charge l'analyse statique et peut être installé via des gestionnaires de paquets standard ou intégré directement dans les environnements de navigateur via des balises de script.
Ensures reactivity system detects index-based changes or length adjustments in arrays.
Bevy is a cross-platform game engine and framework built in Rust, designed for creating interactive simulations and graphical applications. It utilizes a data-oriented entity-component-system architecture to manage game state, organizing data into contiguous memory blocks to facilitate high-performance processing and massive parallelization of entities. The engine distinguishes itself through a modular plugin architecture and a system-based task scheduler that automatically parallelizes logic by analyzing data access patterns. By employing reactive change detection and deferred command buffer
Tracks modifications to component data to trigger specific logic updates only when relevant state changes occur during the frame.
This project is a build orchestration engine and development toolkit designed for managing large-scale monorepos. It provides a unified workspace environment that maps project relationships and dependencies, enabling the system to perform intelligent impact analysis and execute only the tasks affected by specific code changes. The system distinguishes itself through a persistent daemon that monitors file changes for near-instant feedback and a content-addressable caching mechanism that stores task outputs to prevent redundant computation across local and remote environments. It further suppor
Monitors dependency changes to trigger task execution only for impacted projects within the monorepo.
✍ It has never been so easy to document your things!
Provides a development server that automatically refreshes the browser when documentation source files are edited.
Zola is a static site generator that compiles Markdown and templates into a standalone website. It is distributed as a single binary, removing the need for external runtimes or package managers to build the final site. The project includes a built-in Sass compiler to transform styles into compressed CSS and a dedicated Markdown rendering engine that supports task lists and footnotes. It also features a client-side search indexer, enabling full-text site search without a backend server, and a multilingual content manager for organizing translated content. Additional capabilities cover asset o
Automatically refreshes the browser when source files are changed for immediate visual feedback.
Capacitor is a cross-platform mobile framework that enables developers to build native applications using web technologies. It functions as a hybrid app container, wrapping web assets within a native runtime that provides a standardized bridge to device hardware and system-level services. By exposing native functionality through a plugin-based architecture, it allows web applications to access platform-specific features while maintaining a consistent interface across mobile and desktop environments. The project distinguishes itself by maintaining native project files as source assets, allowin
Refreshes the application view on connected devices automatically when code changes are detected.
Perspective is a columnar data analytics engine and high-performance visualization component powered by WebAssembly. It provides a system for analyzing and visualizing large or streaming datasets through interactive data grids and charts, utilizing a compiled binary to achieve near-native performance within the browser. The project distinguishes itself through a WebSocket-based data streaming interface and deep Apache Arrow integration, which minimize memory overhead when synchronizing tables between servers and clients. It acts as a remote query proxy capable of translating visualization con
Implements reactive change detection that triggers callbacks automatically when table data is modified or deleted.
Flecs is a high-performance entity component system framework and data-oriented programming library. It serves as a simulation engine core and game engine architecture tool, decoupling state from behavior by separating entities, components, and systems. The framework features a runtime reflection layer for dynamic data inspection and a built-in scripting system for defining entity behavior without recompilation. It also includes a network interface and REST API for remote simulation administration and state querying. The library covers a broad surface of simulation capabilities, including ar
Implements a system to monitor data modifications and skip processing for queries where state has not changed.
This is a local development server extension for VS Code that provides static file hosting and automatic browser reloading upon saving source files. It functions as a live reloading tool and static file web server, allowing developers to preview web pages locally with support for custom ports and root directories. The project distinguishes itself by offering a local network preview server that exposes projects to other devices on the same wireless network via IP. It also includes a development proxy capable of adding Cross-Origin Resource Sharing headers and proxying traffic to external URIs.
Maintains a WebSocket connection between the server and browser to trigger real-time page refreshes.
Stylus is a browser extension for installing, managing, and editing user-created CSS themes that customize the appearance of websites. It provides a central interface for organizing, enabling, disabling, and removing installed styles, and includes a built-in CSS editor with syntax highlighting and linting support. The extension supports the UserCSS format, allowing users to install themes from .user.css files or URLs, and generates a basic UserCSS template with required metadata fields when creating new styles. Stylus can watch local .user.css files for changes and automatically apply edi
Watches a local .user.css file for changes and automatically applies edits to matching web pages.
CodeIgniter is a PHP web framework built on the Model-View-Controller pattern, designed for building full-stack web applications. It provides a lightweight toolkit with minimal configuration, organizing application logic into controllers, models, and views for clean separation of concerns. The framework includes a fluent query builder for constructing SQL statements programmatically, PSR-4 autoloading with namespace mapping, and a service-based dependency injection container for managing shared class instances. The framework distinguishes itself through its comprehensive set of built-in tools
Watches the app directory for file changes and automatically reloads the browser during development.
ihp est un framework web typé et un orchestrateur d'applications full-stack conçu pour PostgreSQL. Il fonctionne comme un framework de rendu côté serveur et un ORM typé qui génère automatiquement des types d'enregistrements à partir de schémas SQL pour garantir la validation des requêtes à la compilation. La plateforme se distingue en vérifiant le routage, les requêtes de base de données et les modèles (templates) au moment de la compilation pour éviter les plantages à l'exécution. Elle implémente des interfaces web en temps réel utilisant les WebSockets pour une synchronisation instantanée des données et emploie l'hypermédia piloté par le serveur pour la mise à jour partielle du DOM. Le framework couvre un large éventail de capacités intégrées, incluant la gestion de l'identité utilisateur avec support des passkeys et OAuth, une couche de stockage de données complète avec migrations automatisées, et un système de rendu d'interface utilisateur complet avec templating HTML typé. Il fournit également des outils intégrés pour le développement d'API JSON, l'exécution de tâches asynchrones en arrière-plan et l'intégration financière pour les passerelles de paiement. Les environnements de production sont gérés via un déploiement NixOS déclaratif pour une infrastructure reproductible.
Automatically refreshes the browser when code changes are saved to provide immediate developer feedback.
Ce projet est une implémentation de React Server Components, fournissant une architecture de composants full-stack qui mélange le rendu côté serveur avec l'interactivité côté client. Il permet le développement d'applications web où les composants côté serveur uniquement pour la récupération de données et les composants clients interactifs coexistent au sein d'un seul arbre de composants. Le système se concentre sur l'orchestration des données serveur-client, permettant l'exécution de fonctions serveur et de mutations de base de données à travers la limite réseau. Il se distingue par une architecture de composants hybride qui déplace l'exécution des composants vers le serveur pour réduire la taille des bundles clients et améliorer les temps de chargement initiaux. Le projet couvre une large gamme de capacités, y compris la récupération de données asynchrone avec suspense, la mémoïsation automatique des composants et l'optimisation du rendu côté serveur. Il inclut également des outils pour gérer l'état complexe, coordonner le chargement des actifs pour éviter les décalages de mise en page, et construire des applications multiplateformes pour le web et le mobile. L'outillage de développement est fourni pour détecter les composants impurs, analyser les dépendances des modules et inspecter les hiérarchies de composants pendant le développement.
Provides a reactive change detection system that triggers updates only when semantic state changes occur.
Trunk est un outil de build et un serveur de développement pour compiler du code Rust vers WebAssembly et le packager pour un déploiement dans le navigateur. Il fonctionne comme un bundler web qui combine des modules WebAssembly, du JavaScript et des fichiers statiques en une application web déployable. L'outil fournit un serveur de développement local utilisant des proxies HTTP et WebSocket pour permettre une itération rapide. Cet environnement inclut un observateur de système de fichiers qui déclenche des rebuilds automatiques et le rechargement du navigateur lorsque les fichiers sources sont modifiés. Le pipeline gère la conversion du code source Rust en binaires WebAssembly et génère le code de liaison JavaScript nécessaire pour instancier les modules. Il effectue également le bundling d'assets en extrayant les dépendances et les fichiers statiques basés sur les références trouvées dans un fichier HTML source.
Implements a WebSocket-based mechanism to automatically refresh the browser after successful builds.
Ce projet est une référence technique et un guide pour optimiser les performances des applications Angular. Il fournit une liste de contrôle complète pour améliorer la vitesse et l'efficacité en se concentrant sur l'optimisation des bundles, les meilleures pratiques de rendu et l'exécution au moment de l'exécution (runtime). Le guide couvre un large éventail de différenciateurs, notamment la mise en œuvre de stratégies d'applications web progressives (PWA) via des service workers et la mise en cache hors ligne. Il détaille également des méthodes pour améliorer les temps de chargement perçus en utilisant le rendu côté serveur et les shells d'application. Le dépôt fournit des conseils sur des domaines de compétences plus larges tels que le réglage de la détection de changement, l'utilisation de web workers pour décharger les calculs lourds, et la gestion du DOM via le défilement virtuel. Il couvre également la réduction de la taille des bundles via le tree-shaking, la minification et le fractionnement des modules en chargement paresseux (lazy-loading).
Reducing unnecessary browser re-renders by optimizing how Angular tracks state changes and executes logic outside of zones.
Observe-js is a JavaScript library designed for reactive state management and automated data synchronization. It provides a framework for monitoring complex data structures, allowing applications to maintain consistency by automatically triggering updates whenever object properties, nested paths, or collection contents are modified. The library distinguishes itself through granular observation capabilities, including the ability to track specific array mutations and deep object changes using low-level property interception. It employs path-based dependency resolution to map complex data struc
Monitors collections for additions, removals, or reordering to keep dependent lists and data structures in sync with the source.
The repository contains a curated collection of coding conventions, architectural patterns, and best practices designed for developing component-based web applications using Angular and TypeScript. It functions as an architecture manual establishing consistent patterns across development teams, covering application structure, component design, and code quality enforcement. The guidelines define domain-driven file organization and module encapsulation strategies that group project assets into bounded contexts with dedicated root facades to keep large codebases manageable and shorten import pat
Angular components maximize rendering performance by applying push-based change detection strategies and handling immutable input data.
Voby is a signal-based framework for building reactive user interfaces. It utilizes fine-grained observables to track data dependencies and trigger direct updates to the document object model, bypassing the need for a virtual DOM reconciliation process. By wrapping state in proxies, the framework automatically intercepts mutations to ensure consistent data flow across the application. The framework distinguishes itself through a focus on performance and lifecycle precision. It employs reactive update batching to group state changes into single execution cycles, minimizing redundant operations
Filters reactive data streams to trigger UI updates only when specific values change, preventing unnecessary re-renders.