@angular-architects/ddd
Advanced tools
Comparing version 1.0.0 to 1.0.1
{ | ||
"name": "@angular-architects/ddd", | ||
"version": "1.0.0", | ||
"version": "1.0.1", | ||
"author": "Manfred Steyer", | ||
@@ -5,0 +5,0 @@ "description": "Nx plugin for structuring a monorepo with domains and layers", |
@@ -5,7 +5,7 @@ # @angular-architects/ddd -- DDD Plugin for Nx | ||
![domains and layers](assets/ddd.png) | ||
![domains and layers](https://github.com/angular-architects/nx-ddd-plugin/blob/master/libs/ddd/assets/ddd.png?raw=true) | ||
The generated access restrictions prevent unwanted access between libraries respecting layers and domains: | ||
![access restrictions](assets/linting-2.png) | ||
![access restrictions](https://github.com/angular-architects/nx-ddd-plugin/blob/master/libs/ddd/assets/linting-2.png?raw=true) | ||
@@ -45,3 +45,3 @@ ## Features | ||
![dependency graph](assets/ddd.png) | ||
![dependency graph](https://github.com/angular-architects/nx-ddd-plugin/blob/master/libs/ddd/assets/ddd.png?raw=true) | ||
@@ -56,3 +56,3 @@ To see that the skeleton works end-to-end, call the generated feature component in your ``app.component.html``: | ||
![Result proving that the generated skeleton works end-to-end](assets/result.png) | ||
![Result proving that the generated skeleton works end-to-end](https://github.com/angular-architects/nx-ddd-plugin/blob/master/libs/ddd/assets/result.png?raw=true) | ||
@@ -63,8 +63,10 @@ ## Generated Structure | ||
![Folder per Domain](assets/ddd-libs.png) | ||
![Folder per Domain](https://github.com/angular-architects/nx-ddd-plugin/blob/master/libs/ddd/assets/ddd-libs.png?raw=true) | ||
The domain layer is subdivided into three parts: | ||
![](assets/domain-layer.png) | ||
![Structured Domain Layer](https://github.com/angular-architects/nx-ddd-plugin/blob/master/libs/ddd/assets/domain-layer.png?raw=true) | ||
### Generated Structure for Domain Library | ||
- **application:** Contains application services. This is a DDD term for what we call facades in Angular nowadays. They orchestrate everything for a use case given so that a feature component only needs to communicate with one such facade. Also, it hides details for state management. While the generates facades just use a ``BehaviorSubject``, feel free to add a library like NGRX underneath. As such a modifications changes nothing from the component's perspective, you can use facades to introduce NGRX later on demand. | ||
@@ -78,3 +80,3 @@ - **entities:** Client-side data model including logic operating on it (like validations). | ||
![Access restrictions via linting](assets/linting-3.png) | ||
![Access restrictions via linting](https://github.com/angular-architects/nx-ddd-plugin/blob/master/libs/ddd/assets/linting-3.png?raw=true) | ||
@@ -81,0 +83,0 @@ ## Example Application |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
49185
89