30 open-source projects similar to risingstack/react-easy-state, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best React Easy State alternative.
re-frame is a functional framework for building single-page applications in ClojureScript. It provides a centralized, immutable database that serves as the single source of truth for the entire application state, enforcing a strict unidirectional data flow where events trigger state transitions and subsequent view updates. The framework distinguishes itself through a reactive signal graph and an interceptor-based middleware pipeline. By treating application logic as a sequence of data-driven events and declarative side effects, it decouples business logic from the view layer. This architectur
MPX is a cross-platform framework designed to build applications for multiple mini-program ecosystems and the web from a single codebase. It utilizes a static transpilation pipeline to transform source code into platform-specific bundles, employing a single-file component system that encapsulates templates, logic, and styles. The framework provides a reactive state management system that automatically synchronizes application data with the user interface through computed properties and watchers. The project distinguishes itself through a robust build-time toolchain that supports sub-package p
Legend-State is a reactive state management library for JavaScript applications that provides a centralized container for application data. It utilizes a fine-grained reactivity engine to track state access automatically, allowing developers to update and retrieve data without the need for boilerplate patterns like reducers, actions, or dispatchers. The library distinguishes itself through its hierarchical, path-based state addressing and proxy-based dependency tracking. By isolating state dependencies, it ensures that user interface updates are triggered only for the specific components that
Vue is a progressive, component-based JavaScript framework designed for building reactive user interfaces and single-page applications. It centers on a declarative template system that transforms HTML into efficient render functions, allowing developers to organize complex interfaces into isolated, reusable units that synchronize automatically with application state. The framework distinguishes itself through a dependency-tracking reactivity system that monitors data access during rendering to trigger precise updates. It provides a flexible architecture that supports both incremental adoption
This project is a Java GUI framework used to build cross-platform desktop, mobile, and embedded applications. It centers on a hardware accelerated graphics engine that provides 2D and 3D visualizations and visual effects, complemented by a reactive UI binding system for synchronizing data and interface updates. The framework distinguishes itself through the FXML markup language, which separates the visual structure of an interface from its procedural logic. It also includes a dedicated CSS styling engine that allows for the customization of component appearances using external stylesheets and
Vue is a progressive JavaScript framework designed for building modular, reactive user interfaces. It utilizes a component-based architecture that allows developers to encapsulate logic, templates, and styles into reusable units. At its core, the framework employs a virtual DOM renderer and a proxy-based reactivity system to synchronize application state with the document object model efficiently. What distinguishes this framework is its focus on developer experience and flexibility. It supports a single-file component format that colocalizes related concerns, alongside a powerful composition
Reagent is a framework for building web user interfaces using ClojureScript and React.js. It enables a functional programming approach to declarative UI design, where HTML structures and component hierarchies are defined using vector-based Hiccup syntax instead of JSX. The project differentiates itself through a reactive state management system based on atoms. It tracks which components dereference specific state atoms to trigger automatic re-renders and provides state cursors to isolate updates to specific paths of a larger state atom. It also includes utilities for wrapping native JavaScrip
Signals is a reactive state management library and fine-grained reactivity engine. It functions as a dependency-tracking state manager that maps relationships between values to ensure derived data and user interface elements remain synchronized. The library distinguishes itself through direct-to-node DOM binding, which allows state to update specific text nodes in the browser without triggering a full component render cycle. It employs a runtime dependency graph and atomic batching to group multiple state modifications into single notification cycles, reducing redundant executions. The syste
Vuex is a centralized state management library for Vue.js applications. It provides a single source of truth for application data, ensuring consistent state across a component tree through a reactive data store. The system organizes the global state tree into independent, namespaced modules to prevent naming collisions and maintain code organization. It distinguishes between synchronous mutations for predictable state transitions and asynchronous actions for handling complex operations. The library includes cached getters for derived state, store lifecycle hooks for mutation interception, an
This is a mobile object database and NoSQL local data store that replaces relational tables with a schema-based model. It functions as a reactive data store, using live object observations and change notifications to trigger automatic user interface refreshes. The system provides built-in mobile cloud data synchronization to keep local datasets consistent with a remote server across multiple devices. It also includes security features for encrypted local storage, protecting sensitive on-disk data using at-rest encryption keys and fine-grained access control. Broad capabilities include object
Lit is a library for building lightweight, interoperable web components. It provides a base class that leverages native browser APIs to encapsulate state, logic, and styles, allowing developers to create custom elements that function consistently across any modern web project. The framework distinguishes itself through a reactive property system that automatically triggers efficient, batched DOM updates. By utilizing tagged template literals, it defines declarative UI structures that are compiled into optimized update instructions. Its architecture emphasizes modularity through a reactive con
Pinia is a state management library for Vue applications that provides a centralized, type-safe architecture for organizing reactive data. It utilizes a modular store pattern, allowing developers to define independent, reusable state containers that manage shared application data, computed getters, and executable actions. The library distinguishes itself through a flexible definition model that supports both functional setup patterns and traditional object-based structures. It features a plugin-based extension architecture that enables developers to hook into the store lifecycle for custom fu
Ripple is a full-stack TypeScript web framework and reactive UI library used for building interfaces with server-side rendering. It organizes user interfaces into a hierarchy of reusable, scoped components with built-in state management and client-side hydration. The framework is distinguished by its fine-grained reactivity, which updates specific DOM elements without requiring full component re-renders. It integrates server-side logic and client-side components within a single TypeScript codebase, enabling a unified full-stack development workflow. The system covers a broad range of capabil
This is the comprehensive documentation website for the Vue 2 progressive JavaScript framework. It serves as a technical reference and development guide for building reactive user interfaces and single-page applications. The site provides a detailed JavaScript API reference and a web component directory. It covers the implementation of component-based architectures, reactive state management, and the use of a virtual DOM to synchronize application state with the browser. The documentation details capabilities including client-side routing, declarative DOM manipulation, and frontend build opt
This project is a minimal reproduction of the Vue 3 core logic, designed for studying the framework's internal source code. It implements a reactive state engine, a template compiler, a virtual DOM renderer, and a component lifecycle manager. The implementation uses proxies and effect schedulers to track data dependencies and trigger automatic interface updates. It features a template compiler that parses interpolation and text nodes to convert template syntax into renderable structures, alongside a virtual DOM system that transforms component definitions into a tree of elements. The system
This project is a technical study and comprehensive guide to the internal architecture of the Vue.js framework. It provides detailed documentation and guided analyses of the framework's source code, specifically focusing on its core design patterns and internal logic. The resource centers on a deep dive into the Vue.js reactivity system and rendering engine. It examines how the framework tracks state changes, manages dependency collection, and executes the process of updating the DOM. The analysis covers several key architectural mechanisms, including virtual DOM reconciliation, template-to-
TinyBase is a reactive data store and in-memory relational database designed for client-side state persistence. It serves as a local-first sync engine that merges distributed state using conflict-free replicated data types and logical clocks to ensure deterministic data convergence. The project features a schema validation library that converts external definitions from tools like Zod, Yup, and TypeBox into type-safe store definitions. It provides an infrastructure for real-time collaborative editing, utilizing synchronization with Automerge, Yjs, and PartyKit to maintain consistent state acr
This project is an ECMAScript proposal to introduce a native reactive state primitive to the JavaScript language. It defines a standard for fine-grained reactivity, providing a mechanism to track value dependencies and automatically propagate updates through a dependency graph. The specification focuses on managing computed values and side effects based on granular changes to state. It enables the synchronization of state updates across a dependency graph and the tracking of relationships between values and their observers without manual subscriptions. The proposal covers efficient value com
React is a JavaScript library for building user interfaces based on a component-driven architecture and unidirectional data flow.
This project is a collection of practical code samples and demonstrations for building user interfaces with React. It serves as a set of examples illustrating common interface patterns, state management techniques, and the implementation of modular, reusable components. The repository provides specific demonstrations for several core development areas. These include samples for retrieving and rendering asynchronous data from external APIs, managing component lifecycles during mounting and unmounting, and handling internal state to sync form inputs. It also includes guides for direct document
ink-kit is a React-based component library and UI kit designed specifically for building the frontends of onchain applications. It provides a set of themed layouts and reusable UI elements tailored for decentralized application user experiences. The project includes a standardized blockchain wallet connector to manage identities and allow users to link cryptocurrency wallets to a web application. It combines these identity tools with pre-styled components to facilitate the development of web3 user interfaces.
Electric is a Postgres data synchronization engine and replication proxy designed to enable local-first software. It replicates data from Postgres databases to client-side stores in real time using logical replication, allowing applications to maintain a local embedded database for offline access and low-latency updates. The system distinguishes itself by using shapes to filter and authorize specific subsets of database rows and columns before streaming them to clients or edge workers. It further supports multi-user collaboration by integrating a conflict-free replicated data type framework t
Leptos is a full-stack Rust web framework designed for building reactive applications that share logic and types between the server and the browser. It provides a comprehensive toolkit for developing web interfaces where specific DOM nodes update automatically in response to changes in underlying reactive signals, rather than re-rendering entire component trees. The framework distinguishes itself through a fine-grained reactivity model that tracks dependencies at the individual data point level. It utilizes compile-time template transformation to convert declarative HTML-like syntax into opti
This project is an implementation of React Server Components, providing a full-stack component architecture that blends server-side rendering with client-side interactivity. It enables the development of web applications where server-only components for data fetching and interactive client components coexist within a single component tree. The system focuses on server-client data orchestration, allowing for the execution of server functions and database mutations across the network boundary. It distinguishes itself through a hybrid component architecture that shifts component execution to the
This project is a comprehensive collection of modular, reactive functions designed to streamline the development of user interfaces. It serves as a toolkit for managing application state, wrapping native browser hardware and system features, and encapsulating common logic patterns into reusable units. By binding asynchronous data sources, browser events, and system properties to component state, it provides a unified framework for building interactive web and desktop applications. The library distinguishes itself through its focus on composition and lifecycle management, allowing developers t
This project is a declarative framework for building reactive user interfaces by embedding logic directly into HTML markup. It functions as a lightweight state container that tracks data changes and automatically synchronizes the document object model with the underlying application state. By utilizing proxy-based observation, it ensures that interface updates occur precisely when reactive properties are modified. The framework distinguishes itself by allowing developers to define interactive behavior through custom attributes rather than external scripts. This approach enables the compositio
Compose Samples is a collection of reference implementations for the Jetpack Compose UI library, serving as a practical guide for building native Android user interfaces. It demonstrates the use of a declarative framework where Kotlin functions describe layout structures and data dependencies, enabling developers to construct modern, reactive interfaces. The repository highlights architectural patterns that prioritize maintainability and testability, such as layered organization and unidirectional data flow. It showcases how to implement adaptive layouts that automatically adjust to various s
This project is a collection of reference implementations and sample applications for Flutter. It provides practical examples covering API integration, user authentication, data persistence, and a gallery of UI patterns. The repository distinguishes itself by offering a wide array of functional demos, including implementations for Google and email-based identity verification, cloud database synchronization, and the use of both relational and key-value local storage. It also includes specialized utility examples such as expense tracking, tip calculation, and body mass index tools. The project
Floem is a native desktop UI framework and cross-platform toolkit for building high-performance user interfaces. It functions as a reactive UI library that uses a signal-based state management system to automatically synchronize the interface with data changes via lightweight observable primitives. The framework utilizes a GPU-accelerated rendering engine to ensure visual consistency and high performance across different desktop operating systems. It features a layout engine based on flexible box and grid models to create responsive screens that adapt to various window sizes. The toolkit cov
Mithril.js is a JavaScript framework for building single page applications. It functions as a virtual DOM library and reactive UI framework, providing a system to synchronize application state with visual elements to ensure interfaces update instantly. The toolkit includes a built-in client side router that maps browser URL paths to specific components without reloading the page. It also features an integrated HTTP request client for performing asynchronous network calls to remote APIs for data retrieval and transmission. The framework covers broad capabilities for frontend development, incl