Skip to main content

python implementation of the redux library

Project description

Python port of redux library

Simple example app:

```
from pyredux import create_store, actiontypes, frozenbunch

action_types = actiontypes('myapp', 'increment decrement')

def app_reducer(state, action):
if state is None:
return frozenbunch(counter=0)
if action.type == action_types.increment:
return state.copy(counter=state.counter + 1)
elif action.type == action_types.decrement:
return state.copy(counter=state.counter - 1)
return state

store = create_store(app_reducer)
```

The frozenbunch type is an immutable version of the Bunch pattern, whose members can be accessed by item or by attribute. For example:

```
x = frozenbunch(foo=12, bar=7)
x['foo']
x.foo
x['foo'] = 17
x.foo = 17
x = x.copy(bar=17)
```


Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

py-redux-0.1.1.tar.gz (4.7 kB view hashes)

Uploaded Source

Built Distribution

py_redux-0.1.1-py2.py3-none-any.whl (7.5 kB view hashes)

Uploaded Python 2 Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page