According to the docs, redux-saga is a library that aims to make application side effects (i.e. asynchronous things like data fetching and impure things like accessing the browser cache) easier to manage, more efficient to execute, simple to test, and better at handling failures.
Why You Should Use Redux Saga
Redux became the popular and standard for state management in ReactJS applications. Redux provides an interface for dispatching actions to reducers which leads to transitions between states that other components (or Sagas) may react to. Redux Saga is an approach to the organization of side effects. It allows you to write asynchronous events in a clear and declarative style without callbacks.
Benefits of Redux sagas
- Simplicity of testing
- Declarative style
- Simplicity in organizing difficult side effects sequences
How does redux-saga work?
Sagas are implemented using generator functions (a new ES6 feature). Unlike normal functions which run to completion and return a final value, generator functions can be paused and resumed on demand and can return (more accurately yield) multiple values.
Check the official website for more details