Redux CRUD is a convention driven way of building CRUD applications using Redux. After building several Flux applications we found that we always end up creating the same action types, actions and reducers for all our resources.
Redux CRUD gives you a standard set of:
- action types: e.g.
USER_UPDATE_SUCCESS
- actions: e.g.
updateSuccess
,updateError
- reducers: for the action types above e.g.
updateSuccess
When building an app you might have resources like users
, posts
and comments
.
You'll probably end up with action types for them like:
USERS_FETCH_SUCCESS
POSTS_FETCH_SUCCESS
COMMENTS_FETCH_SUCCESS
And action creators like:
users.fetchSuccess
posts.fetchSuccess
comments.fetchSuccess
There's obvious repetition there. Redux CRUD aims to remove this boilerplate by providing strong conventions on naming and processing data.
Redux-crud provides two stores:
- List. A plain JS array. This preserves the order of records.
- Map. A JS object where records are indexed by key. This provides faster writes and lookups.
npm test
You can see a basic example here