awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
Back to statelyai/xstate

Projects sharing features with Xstate

30 open-source projects similar to statelyai/xstate, ranked by shared indexed features. Tags may describe platforms or build tools rather than the same primary purpose. Check each project’s use case, license, and deployment requirements before treating it as a replacement.

  • day8/re-frameday8 avatar

    day8/re-frame

    5,532View on GitHub↗

    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

    Clojureclojurescriptre-framereact
    View on GitHub↗5,532
  • effector/effectoreffector avatar

    effector/effector

    4,837View on GitHub↗

    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

    TypeScriptbusiness-logiceffectorevent-driven
    View on GitHub↗4,837
  • mobxjs/mobxmobxjs avatar

    mobxjs/mobx

    28,189View on GitHub↗

    MobX is a reactive state management library and fine-grained reactivity engine. It provides an observable data store that automatically triggers updates in the user interface when data structures change, functioning as a transparent functional reactive store to maintain a consistent source of truth. The system utilizes a dependency-graph mapping and proxy-based object observation to track data dependencies. This ensures that only the specific components dependent on changed data are updated, which reduces unnecessary re-renders and optimizes frontend performance. The library supports decoupl

    TypeScriptjavascriptmobxreact
    View on GitHub↗28,189

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Find more with AI search
  • pmndrs/zustandpmndrs avatar

    pmndrs/zustand

    58,371View on GitHub↗

    Zustand is a state management library that provides a centralized store for managing shared application data. It functions as a reactive container that connects application state to components, allowing them to subscribe to specific slices of data and trigger updates automatically. By utilizing selector-based data access and immutable state updates, the library ensures that components only re-render when their observed data changes, maintaining a predictable and efficient data flow. The library distinguishes itself through a pluggable, middleware-based architecture that allows for the extensi

    TypeScripthacktoberfesthooksreact
    View on GitHub↗58,371
  • reduxjs/reduxreduxjs avatar

    reduxjs/redux

    61,511View on GitHub↗

    Redux is a predictable state container designed to manage global application data through a centralized store. It operates on a unidirectional data flow architecture where state transitions are triggered by dispatching action objects, which are then processed by pure reducer functions to produce a new, immutable state tree. This approach ensures that application data remains consistent and traceable across the entire component hierarchy. The library distinguishes itself through a functional pattern that relies on pure functions for state logic and a middleware-based extension system. This mid

    TypeScriptredux
    View on GitHub↗61,511
  • zerobias/effectorzerobias avatar

    zerobias/effector

    4,837View on GitHub↗

    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

    TypeScript
    View on GitHub↗4,837
  • spine/spinespine avatar

    spine/spine

    3,687View on GitHub↗

    Spine is a JavaScript MVC framework and client-side library designed to organize web applications into maintainable components and modules. It functions as a modular frontend architecture that separates data management from user interface logic using the model-view-controller pattern. The framework operates as an event-driven state manager, utilizing a publish-subscribe messaging pattern to synchronize application state and update views. It includes a template-based view engine that generates HTML by injecting dynamic data from a model into predefined markup. The system provides tools for fr

    JavaScript
    View on GitHub↗3,687
  • pytransitions/transitionspytransitions avatar

    pytransitions/transitions

    6,548View on GitHub↗

    Transitions is an object-oriented finite state machine library for Python. It provides a framework for managing valid states and the logic for moving between them, including implementations for asynchronous state machines and thread-safe state managers. The library supports hierarchical state machines that allow states to be nested to organize complex subtasks and logical contexts. It includes tools for generating visual diagrams of states and transitions to document machine logic. The project covers state management primitives such as lifecycle callbacks, conditional transition guarding, an

    Python
    View on GitHub↗6,548
  • choojs/choochoojs avatar

    choojs/choo

    6,767View on GitHub↗

    Choo is a minimalist frontend framework providing a tiny foundation for building web applications. It functions as an event-driven application core that decouples business logic from rendering and includes a client-side router to manage browser history and URL mapping without page reloads. The project distinguishes itself through an architecture that combines a server-side rendering engine for generating static HTML strings with a stateful UI component library. This allows for the creation of self-contained interface elements that maintain internal data and persist across global renders. The

    JavaScriptchoodominterface
    View on GitHub↗6,767
  • felangel/blocfelangel avatar

    felangel/bloc

    12,455View on GitHub↗

    This is a Dart state management library and architectural framework that decouples business logic from the user interface by transforming a stream of events into a stream of states. It implements a business logic component pattern to ensure that state transitions are predictable and testable. The project distinguishes itself through advanced event stream processing, providing concurrency strategies to drop, restart, or queue incoming events. It includes a dedicated state persistence layer for saving and restoring application state to maintain session continuity, as well as tools for state his

    Dart
    View on GitHub↗12,455
  • immutable-js/immutable-jsimmutable-js avatar

    immutable-js/immutable-js

    33,060View on GitHub↗

    Immutable.js is a library of persistent data structures and a functional state management toolkit. It provides a collection of immutable objects and arrays that prevent direct mutation to ensure predictable state management in JavaScript applications. The library utilizes structural sharing to efficiently create new versions of data without full copying and implements lazy sequence processing to chain data transformations that execute only when values are requested. It also supports batch mutation processing, allowing multiple changes to be applied to a temporary mutable copy before returning

    TypeScript
    View on GitHub↗33,060
  • pubkey/rxdbpubkey avatar

    pubkey/rxdb

    23,048View on GitHub↗

    This project is a reactive, offline-first NoSQL database engine designed for JavaScript applications. It provides a robust framework for managing application state by synchronizing data across browsers, mobile devices, and server-side runtimes. By treating local storage as the primary source of truth, it enables applications to remain functional without network connectivity, automatically reconciling changes with remote backends once a connection is restored. The database distinguishes itself through a modular architecture that supports cross-environment synchronization and high-performance d

    TypeScriptangularbrowser-databasecouchdb
    View on GitHub↗23,048
  • marcisbee/exomeMarcisbee avatar

    Marcisbee/exome

    278View on GitHub↗

    🔅 State manager for deeply nested states

    TypeScriptexomejavascriptjs
    View on GitHub↗278
  • tanstack/queryTanStack avatar

    TanStack/query

    49,761View on GitHub↗

    This project provides a comprehensive suite of tools for managing asynchronous state and building full-stack web applications. At its core, it functions as a centralized synchronization layer that automates data fetching, caching, and background revalidation, ensuring that remote server data remains consistent with the local user interface. By utilizing a declarative, hook-based programming model, it simplifies the management of complex data lifecycles and loading states. The project distinguishes itself through a headless design philosophy that decouples business logic from visual presentati

    TypeScriptasynccachedata
    View on GitHub↗49,761
  • vercel/swrvercel avatar

    vercel/swr

    32,406View on GitHub↗

    SWR is a data fetching library that provides a collection of hooks for managing remote data synchronization, caching, and state updates in web applications. It employs a declarative approach to handle complex network request lifecycles and dependency chains, ensuring that client-side application state remains consistent with server data through automatic revalidation and background updates. The library distinguishes itself through a reactive cache layer that automatically synchronizes local state with remote sources based on component lifecycle events. It features event-driven revalidation, w

    TypeScriptcachedatadata-fetching
    View on GitHub↗32,406
  • puniverse/quasarpuniverse avatar

    puniverse/quasar

    4,553View on GitHub↗

    Quasar is a JVM concurrency framework that implements the actor model and a lightweight thread library. It provides isolated execution units that communicate via asynchronous message passing to eliminate shared mutable state. The project distinguishes itself through a distributed actor system capable of operating across multiple cluster nodes with location-transparent registries and actor state migration. It utilizes a work-stealing fiber scheduler to manage millions of lightweight threads, allowing tasks to suspend during non-blocking I/O operations without stalling underlying system threads

    Javaactorsconcurrencyfibers
    View on GitHub↗4,553
  • actix/actixactix avatar

    actix/actix

    9,223View on GitHub↗

    Actix is a Rust actor framework and concurrent programming toolkit designed for building applications that manage state through an asynchronous messaging system. It provides a model where independent actors serve as autonomous units of state and logic, communicating via strongly typed messages sent to unique addresses. The framework distinguishes itself by isolating state within these actors, allowing internal data to be mutated safely during message handling without the use of locks or mutexes. It employs an asynchronous mailbox system to buffer incoming requests and uses supervision strateg

    Rustactixactoractor-model
    View on GitHub↗9,223
  • dotnet/orleansdotnet avatar

    dotnet/orleans

    10,789View on GitHub↗

    Orleans is a .NET distributed actor framework designed for building scalable, cloud-native applications. It implements a virtual actor model where entities with stable identities manage their own state and lifecycle across a cluster of servers. The framework provides a distributed state management system with ACID transaction support and a distributed pub/sub streaming engine for real-time data processing. It distinguishes itself through location-transparent routing, automatic actor activation and deactivation, and elastic cluster scaling that redistributes workloads during node failures. Th

    C#actor-modelactorscloud-computing
    View on GitHub↗10,789
  • lonng/nanolonng avatar

    lonng/nano

    3,173View on GitHub↗

    Nano is a distributed application framework designed for building systems using an actor-based messaging model. It functions as a distributed actor framework that decouples components through asynchronous messaging to maintain state isolation across a server cluster. The system acts as a cluster message dispatcher and session-aware request router, tracking client state to route incoming messages to the specific agent holding the session data. It utilizes a distributed agent registry to coordinate the dispatching of messages between multiple application instances acting as agents. The framewo

    Godistributed-systemsgamegolang
    View on GitHub↗3,173
  • jakesgordon/javascript-state-machinejakesgordon avatar

    jakesgordon/javascript-state-machine

    8,751View on GitHub↗

    This library is a finite state machine framework for JavaScript designed to manage application states and valid transitions. It provides a system for executing state changes with lifecycle hooks, conditional guards, and transition cancellation. The project is distinguished by its ability to inject state machine logic and transition capabilities directly into existing JavaScript class instances or objects. It also includes a visualization tool that exports state configurations into Graphviz DOT language for auditing system logic. The framework covers asynchronous transition execution and paus

    JavaScript
    View on GitHub↗8,751
  • didi/mpxdidi avatar

    didi/mpx

    3,905View on GitHub↗

    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

    JavaScript
    View on GitHub↗3,905
  • tencent/omiTencent avatar

    Tencent/omi

    13,259View on GitHub↗

    Omi is a web components framework, reactive UI library, and client-side routing engine. It provides a system for building modular and reusable interface elements based on standard browser web components, using signals to synchronize data changes and update the user interface automatically. The project functions as a cross-framework component tool, exporting standard web elements that operate consistently across different third-party JavaScript libraries. Its capabilities include single-page application navigation and view routing. It also covers reactive state management, component style man

    TypeScriptcomponentscsscustom-elements
    View on GitHub↗13,259
  • chakra-ui/zagchakra-ui avatar

    chakra-ui/zag

    5,121View on GitHub↗

    Zag is a headless UI state machine library that provides unstyled component logic to ensure consistent behavior across different rendering engines. It functions as a toolkit for modeling complex user interface interactions using statecharts, decoupling the underlying logic and accessibility attributes from visual styling. The library is framework-agnostic, utilizing specialized adapters to bridge its state machine logic with various JavaScript libraries such as React, Solid, Vue, and Svelte. This approach allows developers to maintain a single interaction model while applying any CSS or styli

    TypeScripta11yaccessibilityagnostic
    View on GitHub↗5,121
  • warp-drive-data/warp-drivewarp-drive-data avatar

    warp-drive-data/warp-drive

    3,150View on GitHub↗

    Warp Drive is a reactive state management library designed to synchronize remote data with local application state. It functions as a client-side cache manager that aggregates information from multiple external sources into a unified, type-safe store. By transforming raw network responses into immutable objects based on defined schemas, the library ensures data integrity and consistency across complex application states. The system distinguishes itself through a relational caching architecture that stores data in a flat, deduplicated structure. This approach enables surgical updates to the us

    TypeScriptdata-frameworkdata-loadingdata-patterns
    View on GitHub↗3,150
  • rt2zz/redux-persist-storert2zz avatar

    rt2zz/redux-persist-store

    12,969View on GitHub↗

    Redux Persist is a state management utility designed to maintain application data across sessions by synchronizing state with local storage. It functions as a middleware-based engine that automatically saves and restores application state, ensuring that user sessions remain intact after page refreshes or application restarts. The library distinguishes itself through granular control over the persistence lifecycle and data structure. It supports recursive state tree partitioning, allowing developers to apply distinct storage configurations and filtering rules to specific branches of the applic

    TypeScript
    View on GitHub↗12,969
  • preactjs/signalspreactjs avatar

    preactjs/signals

    4,452View on GitHub↗

    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

    TypeScript
    View on GitHub↗4,452
  • legendapp/legend-stateLegendApp avatar

    LegendApp/legend-state

    4,145View on GitHub↗

    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

    TypeScript
    View on GitHub↗4,145
  • framework7io/framework7framework7io avatar

    framework7io/framework7

    18,673View on GitHub↗

    Framework7 is a mobile user interface framework and single-page application system designed to build responsive web applications with native iOS and Android appearances. It provides a comprehensive library of pre-styled components and a layout engine to create native-style user interfaces across multiple platforms. The framework utilizes a platform-aware theming system that adapts visual styles and color schemes based on detected device settings. It incorporates native mobile behaviors through a dedicated UI kit, including specialized interaction patterns such as pull-to-refresh and swipeable

    JavaScriptandroidcomponentscordova
    View on GitHub↗18,673
  • siccity/xnodeSiccity avatar

    Siccity/xNode

    3,728View on GitHub↗

    xNode is a Unity editor extension that provides a visual node graph editor for designing flow-based logic and state machines. It functions as a visual logic designer, allowing for the creation and management of interconnected node networks within the Unity engine. The tool enables the construction of custom logic systems, such as branching dialogue trees and game state machine transitions. It supports the organization of complex graphs through a hierarchical grouping system that wraps related nodes into resizable visual containers. The system utilizes a graph-based data model to define data

    C#editorframeworkgraph
    View on GitHub↗3,728
  • livestorejs/livestorelivestorejs avatar

    livestorejs/livestore

    3,475View on GitHub↗

    Livestore is a reactive state management framework that utilizes a local SQLite database to store and synchronize application data. It provides an event-sourced state store that processes typed events through materializer functions to derive and persist application state. The framework implements offline-first data synchronization using a push-pull engine and append-only event logs to maintain consistency between clients and servers. It includes a real-time presence system for tracking user activity and shared session status across connected clients. The system covers a broad capability surf

    TypeScriptdata-layerlocal-firstsignals
    View on GitHub↗3,475