A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://github.com/reactjs/redux/commit/07cf1424cb5e7bb7284acb282c996690cfc6d8c5 below:

Clarify design goals · reduxjs/redux@07cf142 · GitHub

File tree Expand file treeCollapse file tree 1 file changed

+18

-10

lines changed

Filter options

Expand file treeCollapse file tree 1 file changed

+18

-10

lines changed Original file line number Diff line number Diff line change

@@ -4,23 +4,31 @@ redux

4 4

[![build status](https://img.shields.io/travis/gaearon/redux.svg?style=flat-square)](https://travis-ci.org/gaearon/redux)

5 5

[![npm version](https://img.shields.io/npm/v/redux.svg?style=flat-square)](https://www.npmjs.com/package/redux)

6 6 7 -

An experiment in fully hot-reloadable Flux.

7 +

Atomic Flux with hot reloading.

8 8 9 -

**The API might change any day.**

10 -

_**Don't use in production just yet.**_

9 +

**The API is likely to change a few times before we reach 1.0.**

10 +

**Its [surface area](http://www.youtube.com/watch?v=4anAwXYqLG8) is minimal so you can try it in production and report any issues.**

11 11 12 12

## Why another Flux framework?

13 13 14 14

Read **[The Evolution of Flux Frameworks](https://medium.com/@dan_abramov/the-evolution-of-flux-frameworks-6c16ad26bb31)** for some context.

15 15 16 -

### Design Goals

17 - 18 -

* Hot reloading of everything.

19 -

* A hook for the future devtools to "commit" a state, and replay actions on top of it during hot reload.

16 +

### Philosophy & Design Goals

17 + 18 +

* You shouldn't need a book on functional programming to use Redux.

19 +

* Everything (Stores, Action Creators, configuration) is hot reloadable.

20 +

* Preserves the benefits of Flux, but adds other nice properties thanks to its functional nature.

21 +

* Prevents some of the anti-patterns common in Flux code.

22 +

* Works great in isomoprhic apps because it doesn't use singletons and the data can be rehydrated.

23 +

* Doesn't care how you store your data: you may use JS objects, arrays, ImmutableJS, etc.

24 +

* Under the hood, it keeps all yout data in a tree, but you don't need to think about it.

25 +

* Lets you efficiently subscribe to finer-grained updates than individual Stores.

26 +

* Provides hooks for powerful devtools (e.g. time travel, record/replay) to be implementable without user buy-in.

27 +

* Provides extension points so it's easy to [support promises](https://github.com/gaearon/redux/issues/99#issuecomment-112212639) or [generate constants](https://gist.github.com/skevy/8a4ffc3cfdaf5fd68739) outside the core.

20 28

* No wrapper calls in your stores and actions. Your stuff is your stuff.

21 -

* Super easy to test things in isolation without mocks.

22 -

* I don't mind action constants. Seriously.

23 -

* Keep Flux lingo. No cursors or observables in core.

29 +

* It's super easy to test things in isolation without mocks.

30 +

* You can use “flat” Stores, or [compose and reuse Stores](https://gist.github.com/gaearon/d77ca812015c0356654f) just like you compose Components.

31 +

* The API surface area is minimal.

24 32

* Have I mentioned hot reloading yet?

25 33 26 34

## Demo

You can’t perform that action at this time.


RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4