Angular offre gli strumenti necessari per la creazione di UI e di applicazioni sofisticate ma risulta spesso complesso e oneroso mantenere software nel medio-lungo periodo. Redux ha rivoluzionato il modo di creare architetture front-end, inizialmente in React e successivamente in tutto il mondo Javascript, ed è ormai uno standard de-facto utilizzato dalla maggior parte dei team di tutto il mondo. NGRX implementa questo pattern e fornisce ad Angular gli strumenti per la gestione di uno stato reattivo: typed actions, lazy loaded reducers, effects, memoization, time travelling debug e molto altro