mobx
by
mobxjs

Description: Simple, scalable state management.

View on GitHub ↗

Summary Information

Updated 1 hour ago
Added to GitGenius on January 5th, 2022
Created on March 14th, 2015
Open Issues & Pull Requests: 70 (+0)
Number of forks: 1,801
Total Stargazers: 28,195 (+0)
Total Subscribers: 331 (+0)

Issue Activity (beta)

Open issues: 42
New in 7 days: 0
Closed in 7 days: 0
Avg open age: 713 days
Stale 30+ days: 40
Stale 90+ days: 39

Recent activity

Opened in 7 days: 0
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

  • 🐛 bug (271)
  • ❔ question (96)
  • 🍗 enhancement (51)
  • 📖 documentation (44)
  • 💀 wontfix (39)
  • 🚶 stale (28)
  • ⏰ needs-more-info (27)
  • 💬 discuss (26)

Most active issues this week

No issue events were indexed in the last 7 days.

Repository Insights (GitGenius)

Median issue/PR response: 0.0 hours
Mean response time: 120.0 days
90th percentile: 450.4 days
Tracked items: 94

Most active contributors

Detailed Description

MobX is a TypeScript-based state management library that implements signal-based reactive programming for JavaScript applications. The library is built on the principle that anything derivable from application state should be computed automatically, eliminating the need for manual synchronization between state and UI.

The core philosophy of MobX centers on three key benefits. First, it enables straightforward code with minimal boilerplate by allowing developers to use normal JavaScript assignments to update data, with the reactivity system automatically detecting and propagating changes. Second, it provides effortless optimal rendering by tracking all changes to and uses of data at runtime, building a dependency tree that ensures computations like React component renders execute only when necessary, without requiring manual memoization or selector optimization. Third, it offers architectural freedom by remaining unopinionated about where application state lives, allowing state management outside UI frameworks and making code more decoupled, portable, and testable.

The library uses an observer pattern where components wrapped with the observer function automatically detect dependencies on observable state. When observable state updates through actions, changes propagate precisely to all computations and side effects that depend on them. This reactive system operates transparently without requiring explicit dependency declarations.

According to GitGenius activity tracking, the repository shows strong maintenance patterns with a median issue and pull request response latency of 0.0 hours across 94 tracked items, though the mean response time of 2880.3 hours reflects occasional longer-term discussions. Bug reports represent the most active issue category with 74 tracked items, followed by enhancement requests with 7 items and requests for more information with 5 items. The primary maintainer mweststrate leads contributor activity with 118 tracked events, followed by kubk with 59 events and urugator with 42 events.

The repository maintains connections with major open-source projects including Microsoft's VSCode and TypeScript repositories, as well as the Rust language repository, indicating its influence across the JavaScript and broader programming ecosystem. The project receives substantial financial support from platinum sponsors including Guilded, Canva, and Parallax, along with gold sponsors such as Coinbase, Facebook Open Source, and Frontend Masters, demonstrating significant industry backing.

MobX is classified across numerous reactive programming and state management categories including observable data, dependency tracking, data bindings, observable objects, autorun reactions, action-based updates, and UI synchronization. The library emphasizes minimalist design principles while providing comprehensive integration with UI libraries, particularly React through mobx-react integration. Documentation is centralized at mobx.js.org and includes interactive tutorials, a quick start guide, and comprehensive resources for learning the framework's concepts and implementation patterns.

mobx
by
mobxjsmobxjs/mobx

Repository Details

Fetching additional details & charts...