
The application is slit on domains vertically. Additionally, the matrix slices it on horizontal layers with different types of libraries. If you need to learn in detail, you can find its source code here. (see http://g.co/ng/security#xss)
Here is the point of the monorepo: a single workspace manages several applications and libraries using a common source code repository. You may find a pattern like this in Google, Facebook, Microsoft, etc. It's pretty famous for more than 20 years.
Its ability to prevent version conflicts due to only one central node_modules folder with dependencies is impressive. Add to this straightforward sharing way between project participants, and you will be sure that each library uses the same Angular version.
To make a new Nx-based Angular CLI project ( AKA workspace), you should use the command.
It will run the creation workspace script. Then you can add applications and libraries by using ng generate.
(see http://g.co/ng/security#xss)
Such division is fundamental for good programming. There are two parts - the public part, which allows access to other libraries, and the private part, which is inaccessible by default. The public part is permanent because of the other library's accessibility, and any changes can affect other parts of the system, but the private part is opened for any changes. (see http://g.co/ng/security#xss)
Let's take, for example, the Catalog domain:
(see http://g.co/ng/security#xss)
Also, you can specify these tags in applications and libraries while you are setting them up. Nx developers claimes that the library types get the prefix kind, and the domains receive the prefix scope. This type of prefixes can be freely assigned. (see http://g.co/ng/security#xss)
Call ng lint on the command line to test these rules:
In conclusion, we should say that strategic design is a reliable method to split an application into self-contained domains.
The shared vocabulary of these domains must be used by any of the participants to provide correct communications between layers. The CLI extension Nx offers a sophisticated method to perform these domains with different domain-grouped libraries to achieve these goals. It allows to establish access restrictions for other domains and to reduce dependencies via setting access restrictions to individual libraries. Thus, with these access restrictions, you may create a loosely coupled system with ensured features of the weak effect of the only change. (see http://g.co/ng/security#xss)