NX - oscarlagatta/ng-ecom GitHub Wiki
Let's talk a little bit about what Nx is and FROM who does it come from. It doesn't come from the Angular team. It comes from Nrwl and what's really quite awesome about Nrwl is they're a team of guys and girls who are mostly Ex-Googlers, like Victor Savkin and Jeff Cross, who used to actually work as Core Angular team members. They wrote things like the router and dependency injection. They've left to make their own consulting company called Nrwl and now they help enterprise customers implement Angular. So, they've made Nrwl; have made Nx to help themselves serve this purpose of helping enterprise customers and shared it with everybody. So they're using their own tool; And this is an opinionated tool. This is how they like to do it, but it's not going to tie you into anything you don't want to do. It's not something you couldn't reverse out of. This is where you can go read the docs on it https://nrwl.io. It's still early. I know it's solving the problem we need. But I think we're going to see this grow to be much more popular and a tool more people are using. It's really important to remember what it is; is an extension to the Angular CLI. And I'm going to say this up front because I found it's something I need to keep coming back to when I have problems. I go, oh, I've got an Nx problem and you don't have an Nx problem. You've got an Angular CLI problem or an Angular module problem because this is just an extension of the Angular CLI. NX helps you configure modules in multiple apps. So you just blamed the new tool even though it was further down the chain. But also it's just me looking in the wrong spot and not applying the knowledge I already know. So if you already know Angular modules, which most people are doing, and you know how to lazy load an Angular module, and you're composing modules together to make a single app, then this is a very similar process. You're just putting things in different folders and making it a little bit more formal and following a bit more opinionated enterprise pattern. So as you run into problems or as you're thinking about it just NX; think well, this is really just Angular modules and composing them together. So why would I ever want to trust NX? Like learning Angular CLI and like another dependency, we just want to keep things still because JavaScript moves so fast. But this is something I'm very excited for and I feel confident with the team, but also I feel confident if something was to change in the approach that I could pull out and take my modules back in control just into a normal CLI.