As mentioned from others I can't really see a massive need for this. Unless you have an insane amount of services going on. I run a large ticketing system and it has about 4 services in total and it doesn't warrant ngrx.
I build control systems that have to synchronise with live devices, persist state through reboots from storage on a controller, and modify the availability of device and functions dependant on other device states. ngrx has been invaluable developing my control systems.
Writing less tests because you blackbox your code 🤷🏻♂️ Everything I saw can be easily and performant done with Rxjs and everything Angular already offers. Can somebody explain what is the benefit? Because testability gets worst, reactivity is already given and that it's somehow boost the performance is absolutely not true...
Enterprise grade applications get audited by external companies regularly. If the result of the audit is bad after 4 years and 25 developers involved and they find out that the architecture wasn't by the book, you'll be in trouble. A rewrite can cost millions and personally I'm not taking any chances. It only applies to Angular architects working for enterprise grade clients. For personnal projects or small companies that adopted angular because "why not?", you can do whatever you please. I don't even see the point of using Angular for small projects, NextJS with the SWR caching strategy is so much faster to get going...
all rxjs observables have functional purity, use NgRx just because can't get use to event driven pattern. or just because have no idea how to handle multi stream.