MobX - Simple, scalable state management.

  •        75

MobX is a battle tested, simple and scalable state management library transparently applying functional reactive programming (TFRP). The Mobx design principle is very simple: Anything that can be derived from the application state, should be derived. Automatically. This includes the UI, data serialization, server communication, etc.

https://mobx.js.org/
https://github.com/mobxjs/mobx

Tags
Implementation
License
Platform

   




Related Projects

derivablejs - Functional Reactive State for JavaScript and TypeScript

  •    Javascript

Derivables are an Observable-like state container with superpowers. Think MobX distilled to a potent essence, served with two heaped tablespoons of extra performance, a garnish of declarative effects management, and a healthy side-salad of immutability. Atoms are simple mutable references to immutable values. They represent the ground truth from which all else is derived.


mobx-react-lite - Lightweight React bindings for MobX based on React 16.8 and Hooks

  •    TypeScript

This is a next iteration of mobx-react coming from introducing React hooks which simplifies a lot of internal workings of this package. Class based components are not supported except using <Observer> directly in class render method. If you want to transition existing projects from classes to hooks (as most of us do), you can use this package alongside the mobx-react just fine. The only conflict point is about the observer HOC. Subscribe to this issue for a proper migration guide.

Elm - Functional Reactive Programming Language compiles to Javascript

  •    Javascript

Elm is a functional reactive programming (FRP) language that compiles to HTML, CSS, and JS. FRP is a concise and elegant way to create highly interactive applications and avoid callbacks. It aims to make web development more pleasant. Functional Reactive Programming (FRP) is a high-level way to work with interactions. It provides control flow structures for time.

refract - Harness the power of reactive programming to supercharge your components

  •    TypeScript

Handle your component effects and side-effects in a clear and declarative fashion by using asynchronous data streams (reactive programming). Component-based architecture and functional programming have become an increasingly popular approach for building UIs. They help make apps more predictable, more testable, and more maintainable.

Interstellar - Simple and lightweight Functional Reactive Coding in Swift for the rest of us

  •    Swift

The simplest Observable<T> implementation for Functional Reactive Programming you will ever find. This library does not use the term FRP (Functional Reactive Programming) in the way it was defined by Conal Elliot, but as a paradigm that is both functional and reactive. Read more about the difference at Why I cannot say FRP but I just did.

ReactiveUI - An advanced, composable, functional reactive model-view-viewmodel framework for all

  •    CSharp

ReactiveUI is a composable, cross-platform model-view-viewmodel framework for all .NET platforms that is inspired by functional reactive programming which is a paradigm that allows you to abstract mutable state away from your user interfaces and express the idea around a feature in one readable place and improve the testability of your application.That's reactive programming: changes propagate throughout a system automatically. Welcome to the peanut butter and jelly of programming paradigms. For further information please watch the this video from the Xamarin Evolve conference - Why You Should Be Building Better Mobile Apps with Reactive Programming by Michael Stonis.

model - A functional reactive model library for interactive data visualization.

  •    Javascript

A functional reactive model library - Model.js manages the execution flow of the data flow graphs you define. Kind of like Backbone and React, but simpler and designed specifically for making D3 easier to use. Also check out Chiasm, a visualization runtime engine built on Model.js. Installable via Bower: bower install model.

reflex-dom - Reflex FRP is a composable, cross-platform functional reactive programming framework for Haskell

  •    Haskell

Reflex-DOM is a framework for building web applications in Haskell, based on the Functional Reactive Programming library Reflex. Comprehensive documentation is still a work in progress, but a demo is available and an introductory talk is available at Part 1 / Part 2 (Slides).

marble - Marble

  •    TypeScript

Functional reactive HTTP middleware framework built on top of Node.js platform, TypeScript and RxJS library. If you don't have any experience with functional reactive programming, we strongly recommend to gain some basic overview first with ReactiveX intro or with The introduction to Reactive Programming you've been missing written by @andrestaltz.

reactive-banana - Library for functional reactive programming in Haskell.

  •    Haskell

Reactive-banana is a library for Functional Reactive Programming (FRP), written in Haskell. See the project homepage for documentation, examples and so on.

mobx

  •    Dart

MobX for the Dart language. MobX is a state-management library that makes it simple to connect the reactive data of your application with the UI. This wiring is completely automatic and feels very natural. As the application-developer, you focus purely on what reactive-data needs to be consumed in the UI (and elsewhere) without worrying about keeping the two in sync.

reflex - Reflex FRP is a composable, cross-platform functional reactive programming framework for Haskell

  •    Haskell

Reflex is an fully-deterministic, higher-order Functional Reactive Programming (FRP) interface and an engine that efficiently implements that interface. Reflex-DOM is a framework built on Reflex that facilitates the development of web pages, including highly-interactive single-page apps.

Cyclejs - A functional and reactive JavaScript framework for predictable code

  •    Typescript

Functional enables “predictable” code, and Reactive enables “separated” code. Cycle.js apps are made of pure functions, which means you know they only take inputs and generate predictable outputs, without performing any I/O effects. The building blocks are reactive streams from libraries like xstream, RxJS or Most.js, which greatly simplify code related to events, asynchrony, and errors.

turbine - Purely functional frontend framework for building web applications

  •    TypeScript

A purely functional frontend framework based on functional reactive programming. Experimental. The JavaScript world is full of frameworks. So why another one? Because we want something different. We want something that is purely functional without compromises. Something that takes the best lessons from existing JavaScript frameworks and couples them with the powerful techniques found in functional languages like Haskell. We want a framework that is highly expressive. Because when functional programming is at its best it gives you more power, not less. Turbine is supposed to be approachable for typical JavaScript developers while still preserving the benefits that comes from embracing purely functional programming.

cyclops-react - An advanced, but easy to use, platform for writing functional applications in Java 8

  •    Java

Powerful Streams and functional data types for building modern Java 8 applications. We extend JDK interfaces where possible for maximum integration.ReactiveSeq extends JDK Stream and offers multiple modes of execution - synchonous, asynchronous, asynchronous with backpressure, parallel and more.