23 dépôts
Libraries that connect external state management containers to React UI components.
Distinct from React Integrations: Distinct from general React components or renderers; specifically refers to the bridge between a state store and the UI framework.
Explore 23 awesome GitHub repositories matching web development · React State Bindings. Refine with filters or upvote what's useful.
React Redux is a set of official bindings and integration layers that connect a Redux global state container to a React user interface. It functions as a state synchronization library and a communication bridge, allowing components to read state and dispatch actions to a centralized store. The project decouples business logic from the view layer, ensuring that the user interface automatically updates whenever the underlying global state changes. It manages complex data flows by linking the UI to a central state container to share data across different components and screens. The library impl
Provides official state bindings that connect a Redux store to React UI components.
React Redux is a global state management bridge and a set of bindings that connect React components to a Redux state store. It serves as a communication layer and state store connector, allowing a declarative user interface to synchronize with a centralized source of truth. The library enables the synchronization of shared global state across an application by providing mechanisms to read state and dispatch actions directly from the view layer. It ensures predictable state transitions by bridging the gap between UI components and the Redux state container. The project covers core capabilitie
Bridges the gap between Redux state containers and React components for efficient data synchronization and rendering.
React-Redux provides the official bindings that connect a Redux state container to a React user interface. It functions as a state management integration and UI state connector, enabling the synchronization of a centralized data store with a component tree. The library ensures a predictable UI state flow by implementing a unidirectional data path between the interface and the state container. It allows components to read global state and dispatch actions to trigger updates, maintaining a single source of truth across the application. The project handles state synchronization through a combin
Connects an external Redux state management container to React UI components for automatic synchronization.
Draft-js is a framework for building customizable rich text editors within React applications. It functions as a content editable framework that separates the underlying data model from the visual rendering layer, acting as a rich text content engine to manage complex text data and formatting. The project utilizes an immutable state management system to ensure consistent updates and predictable undo history. It manages editor state through persistent data structures, providing an immutable data state manager to prevent accidental mutation. The framework includes capabilities for high perform
Integrates the editor's internal state with React components using specialized state bindings.
Enzyme is a testing utility for React components designed to verify their output and behavior in a test environment. It serves as a test harness for UI components, providing tools to render visual elements, manage state transitions, and simulate synthetic events. The library distinguishes itself through multiple rendering modes, including a shallow rendering engine for isolated unit testing and full DOM rendering for testing deep integration. It employs an adapter-based integration system to maintain compatibility across different versions of the underlying framework. The toolkit covers a br
Allows updating component properties and props to verify the user interface response to data changes.
Dva is a state management library and client-side application framework designed for building user interfaces with React and Redux. It functions as an asynchronous logic orchestrator and a single page application router, organizing application data through a structured data flow of reducers, effects, and subscriptions. The framework distinguishes itself through the use of generator functions to manage asynchronous workflows and sequential side effects, keeping these operations separate from synchronous state updates. It implements namespace-based model organization to group business logic and
Connects the Redux-based state management container to React UI components via structured data flow.
Recompose is a suite of toolsets for implementing higher-order component composition, context extraction, render optimization, and external state integration. It provides a library of utilities to wrap components in reusable logic and behavioral layers, allowing developers to chain functional wrappers and reduce nesting within a component tree. The project focuses on the composition of functional wrappers to inject properties and behavior into components. It includes a set of helpers for extracting values from component context and passing them as direct properties, as well as tools for integ
Bridges external data sources and state management containers to React UI components.
Frontend Workshop from HTML/CSS/JS to TypeScript/React/Redux
Teaches binding React components to state changes for automatic UI re-rendering.
Reactide is the first dedicated IDE for React web application development.
Debugs React applications by viewing a live component tree with props and state for every component.
Valtio is a proxy-based state management library and reactive state engine that provides a mutable state store. It allows application state to be updated through direct object mutations rather than immutable patterns, using JavaScript proxies to track changes and trigger updates. For React applications, it includes a synchronization hook that ensures components re-render only when the specific properties they access are modified. The system supports reactive data derivation through computed properties that automatically update when their underlying dependencies change. It maintains reactivity
Ships a synchronization hook that connects proxy state to React components for optimized rendering.
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
Manages editor state through React Context, enabling components to read and manipulate the page composition tree.
react-native-mmkv is a synchronous mobile persistence system that provides an encrypted key-value store for mobile applications. It serves as a high-performance wrapper for the MMKV storage engine, eliminating asynchronous overhead by reading and writing values directly to disk. The project distinguishes itself through shared app group storage, which allows data access across multiple application extensions via a shared filesystem directory. It also provides state-synced storage hooks that automatically trigger component updates when stored key-value pairs change. The system covers a broad r
Ships state-synced storage hooks that automatically trigger React component updates when stored values change.
re-frame est un framework fonctionnel pour construire des applications monopages (SPA) en ClojureScript. Il fournit une base de données centralisée et immuable qui sert de source unique de vérité pour l'état global de l'application, imposant un flux de données unidirectionnel strict où les événements déclenchent des transitions d'état et des mises à jour de vue. Le framework se distingue par un graphe de signaux réactifs et un pipeline de middleware basé sur des intercepteurs. En traitant la logique applicative comme une séquence d'événements pilotés par les données et d'effets de bord déclaratifs, il découple la logique métier de la couche de vue. Cette architecture permet aux développeurs de gérer des transitions d'état complexes et des opérations externes via des fonctions pures, garantissant que les effets de bord sont exécutés par un interpréteur séparé plutôt que par des appels impératifs. Le système inclut une suite complète de capacités pour gérer l'architecture applicative, notamment la dérivation de données réactives, la réconciliation de vue basée sur les abonnements et la gestion d'état pilotée par les événements. Il prend en charge des flux de développement avancés tels que le traçage d'événements, la mise en point d'état et la possibilité de simuler (stub) des effets de bord pour des tests isolés. Le projet est conçu pour une intégration avec React, utilisant la réconciliation du DOM virtuel pour mettre à jour efficacement les interfaces utilisateur. Il fournit un ensemble robuste d'utilitaires pour gérer les préoccupations transversales, les graphes de flux de données complexes et coordonner les opérations asynchrones au sein d'un pipeline d'événements séquentiel et prévisible.
Connects external state management containers to React UI components to decouple business logic.
Refluxjs est une bibliothèque de gestion d'état conçue pour implémenter une architecture de flux de données unidirectionnel. Elle gère l'état de l'application via un cycle strict d'actions et de stores pour éviter les boucles de mise à jour imprévisibles. La bibliothèque coordonne les opérations asynchrones en gérant des flux d'événements et en déclenchant des actions de succès ou d'échec associées. Elle fournit également un registre d'état global qui suit les états des stores via des identifiants uniques, permettant le clonage profond pour la persistance et le débogage temporel (time-travel). Sa surface de capacités couvre la gestion centralisée de l'état, y compris la création de stores de données et l'agrégation d'état dérivé. Elle inclut des outils pour intercepter les émissions d'actions via des hooks de pré-émission et des mécanismes pour lier l'état du store directement aux composants de l'interface utilisateur pour un re-rendu automatique.
Binds central store data directly to React components to trigger automatic view re-renders.
Ce projet est un banc de test spécialisé et un utilitaire de mocking conçu pour tester les hooks React en isolation. Il fournit un environnement de composant simulé qui exécute la logique des hooks et suit les valeurs retournées sans nécessiter d'interface utilisateur complète. La bibliothèque permet la vérification des cycles de vie des hooks, y compris les phases de montage, de mise à jour et de démontage. Elle dispose de mécanismes pour injecter des propriétés afin de forcer les re-rendus et d'un système d'attente asynchrone pour s'assurer que les mises à jour d'état sont traitées avant que les assertions ne soient exécutées. L'ensemble d'outils couvre la vérification de la gestion d'état, le nettoyage automatique du cycle de vie pour éviter les fuites d'état entre les tests, et la capacité de déclencher des mises à jour d'état pour vérifier comment les hooks répondent aux changements d'entrées.
Utilities for verifying how hooks respond to state changes by triggering re-renders and managing cleanup.
TinyBase est un magasin de données réactif et une base de données relationnelle en mémoire conçue pour la persistance de l'état côté client. Il sert de moteur de synchronisation local-first qui fusionne l'état distribué en utilisant des types de données répliqués sans conflit (CRDT) et des horloges logiques pour assurer une convergence déterministe des données. Le projet présente une bibliothèque de validation de schéma qui convertit les définitions externes provenant d'outils comme Zod, Yup et TypeBox en définitions de magasin typées. Il fournit une infrastructure pour l'édition collaborative en temps réel, utilisant la synchronisation avec Automerge, Yjs et PartyKit pour maintenir un état cohérent entre plusieurs clients et serveurs. La surface de capacité inclut la modélisation de données relationnelles avec des tables et des clés étrangères, des requêtes et indexations de type SQL, et des transactions atomiques pour les mutations groupées. Il prend en charge un large éventail d'adaptateurs de persistance, incluant le stockage navigateur, SQLite et Cloudflare Durable Objects. Le système fournit également une liaison d'état bidirectionnelle et des composants déclaratifs pour l'intégration avec React, SolidJS et Svelte.
Provides specialized bindings that connect the reactive data store to React UI components.
Sound-redux est un lecteur audio basé sur React et un client API SoundCloud conçu pour parcourir et lire des pistes audio. Il fonctionne comme un gestionnaire d'état Redux pour synchroniser la lecture et les métadonnées des pistes à travers l'application. Le projet s'intègre à l'API SoundCloud pour récupérer et afficher des pistes musicales et des informations sur les artistes. Cela permet la construction d'une interface de streaming musical qui connecte une interface utilisateur personnalisée à des services externes distants pour une consommation publique. L'application utilise un système de gestion d'état basé sur Redux et un modèle de rendu d'interface utilisateur basé sur des composants. Elle intègre le routage d'application monopage et l'intégration d'API REST pour gérer les flux de données et la navigation.
Handles complex application states and data flows for a media player using React and Redux.
Effector is a reactive state management library and data flow orchestrator designed for building complex, event-driven applications. It models application logic as a directed acyclic graph, where state updates and asynchronous side effects propagate automatically through declarative pipelines. By decoupling business logic from user interface layers, it allows developers to maintain state in independent containers that communicate via standard interfaces, ensuring the system remains framework-agnostic. The library distinguishes itself through its robust support for isolated execution scopes, w
Connects state containers to components using specialized hooks to trigger re-renders based on data changes.
Effector is a reactive state management library designed for building complex, event-driven applications. It functions as a data flow engine that models application logic as a directed acyclic graph, ensuring that state updates propagate automatically through interconnected nodes. By utilizing atomic state updates and declarative unit composition, the library maintains data consistency and provides a predictable execution model for managing application state. The project distinguishes itself through its framework-agnostic architecture, which decouples business logic from user interface implem
Creates a component that observes a state store and triggers re-renders when the stored value changes using the render props pattern.
mobx-react est une bibliothèque qui fournit des liaisons d'état pour connecter les composants React à l'état observable MobX. Elle fonctionne comme un synchroniseur d'état de composant, garantissant que les éléments de l'interface utilisateur sont automatiquement re-rendus uniquement lorsque les données observées spécifiques qu'ils consomment changent. Le projet permet une architecture d'état découplée en déplaçant la logique métier et l'état du domaine dans des magasins autonomes, séparant la gestion des données de l'arbre des composants React. Il facilite la distribution de l'état global à travers des hiérarchies de composants profondes en utilisant des fournisseurs et le contexte pour éviter le passage manuel des props (prop drilling). La bibliothèque couvre un large éventail de primitives de gestion d'état, notamment les collections observables, les mises à jour basées sur des actions et la dérivation d'état calculé. Elle fournit des aides à l'intégration de l'interface utilisateur pour les composants de classe et fonctionnels, ainsi que des optimisations de performance pour la précision du re-rendu des composants et la prévention des fuites de mémoire lors du rendu côté serveur. Le projet est implémenté en TypeScript.
Connects external MobX observable state management containers to React UI components for automatic re-renders.