customized redux framework