├── .editorconfig ├── .gitignore ├── README.md ├── _config.yml ├── angular.json ├── docs ├── README.md ├── clean-angular.article.md ├── clean-angular.md ├── dev │ └── 01-themes.md ├── how-to-create-a-doc-file.md └── images │ ├── Presentation-Domain-Data-Layering.png │ ├── all_top.png │ ├── android-data-flow.png │ ├── android-mvp-clean.png │ ├── angular-clean-usecase.png │ ├── clean-architecture.jpg │ ├── clean-data-flow.png │ ├── clean-frontend-architecture.jpg │ ├── clean-frontend-components.jpg │ ├── clean-mvp-component-based.jpg │ ├── clean_architecture_layers.png │ ├── clean_architecture_layers_details.png │ ├── event-data-flow.gif │ ├── js-mvp.png │ └── usecase-flow.png ├── e2e ├── protractor.conf.js ├── src │ ├── app.e2e-spec.ts │ └── app.po.ts └── tsconfig.e2e.json ├── package.json ├── schematics ├── .gitignore ├── README.md ├── package.json ├── src │ ├── collection.json │ └── domain │ │ ├── files │ │ └── __path__ │ │ │ └── __name@dasherize@if-flat__ │ │ │ ├── model │ │ │ ├── __name@dasherize__.entity.ts │ │ │ └── __name@dasherize__.model.ts │ │ │ ├── repository │ │ │ ├── __name@dasherize__.repository.ts │ │ │ └── mapper │ │ │ │ └── __name@dasherize__-repository.mapper.ts │ │ │ └── usecases │ │ │ └── __name@dasherize__.usecase.ts │ │ ├── index.ts │ │ ├── index_spec.ts │ │ ├── schema.json │ │ └── schema.ts ├── tsconfig.json └── yarn.lock ├── src ├── app │ ├── app-routing.module.ts │ ├── app.component.html │ ├── app.component.scss │ ├── app.component.spec.ts │ ├── app.component.ts │ ├── app.module.ts │ ├── core │ │ ├── base │ │ │ ├── mapper.ts │ │ │ └── use-case.ts │ │ ├── core.module.ts │ │ └── services │ │ │ └── auth.service.ts │ ├── domain │ │ └── elephant │ │ │ ├── model │ │ │ ├── elephant.entity.ts │ │ │ └── elephant.model.ts │ │ │ ├── repository │ │ │ ├── elephant-web.repository.ts │ │ │ └── mapper │ │ │ │ └── elephant-web-repository.mapper.ts │ │ │ └── usecases │ │ │ ├── get-all-elephants.usecase.ts │ │ │ └── get-elephant-by-id-usecase.usecase.ts │ ├── features │ │ └── .gitkeep │ ├── pages │ │ └── .gitkeep │ ├── presentation │ │ └── home │ │ │ ├── home.component.html │ │ │ ├── home.component.scss │ │ │ ├── home.component.spec.ts │ │ │ ├── home.component.ts │ │ │ └── home.module.ts │ └── shared │ │ ├── components │ │ └── .gitkeep │ │ ├── directives │ │ └── .gitkeep │ │ ├── interceptors │ │ └── .gitkeep │ │ ├── pipes │ │ └── .gitkeep │ │ └── shared.module.ts ├── assets │ └── .gitkeep ├── browserslist ├── environments │ ├── environment.prod.ts │ └── environment.ts ├── favicon.ico ├── index.html ├── karma.conf.js ├── main.ts ├── polyfills.ts ├── styles.scss ├── test.ts ├── tsconfig.app.json ├── tsconfig.spec.json └── tslint.json ├── tsconfig.json ├── tslint.json └── yarn.lock /.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/.editorconfig -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/.gitignore -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/README.md -------------------------------------------------------------------------------- /_config.yml: -------------------------------------------------------------------------------- 1 | remote_theme: phodal/mifa-jekyll 2 | -------------------------------------------------------------------------------- /angular.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/angular.json -------------------------------------------------------------------------------- /docs/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/docs/README.md -------------------------------------------------------------------------------- /docs/clean-angular.article.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/docs/clean-angular.article.md -------------------------------------------------------------------------------- /docs/clean-angular.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/docs/clean-angular.md -------------------------------------------------------------------------------- /docs/dev/01-themes.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/docs/dev/01-themes.md -------------------------------------------------------------------------------- /docs/how-to-create-a-doc-file.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/docs/how-to-create-a-doc-file.md -------------------------------------------------------------------------------- /docs/images/Presentation-Domain-Data-Layering.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/docs/images/Presentation-Domain-Data-Layering.png -------------------------------------------------------------------------------- /docs/images/all_top.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/docs/images/all_top.png -------------------------------------------------------------------------------- /docs/images/android-data-flow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/docs/images/android-data-flow.png -------------------------------------------------------------------------------- /docs/images/android-mvp-clean.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/docs/images/android-mvp-clean.png -------------------------------------------------------------------------------- /docs/images/angular-clean-usecase.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/docs/images/angular-clean-usecase.png -------------------------------------------------------------------------------- /docs/images/clean-architecture.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/docs/images/clean-architecture.jpg -------------------------------------------------------------------------------- /docs/images/clean-data-flow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/docs/images/clean-data-flow.png -------------------------------------------------------------------------------- /docs/images/clean-frontend-architecture.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/docs/images/clean-frontend-architecture.jpg -------------------------------------------------------------------------------- /docs/images/clean-frontend-components.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/docs/images/clean-frontend-components.jpg -------------------------------------------------------------------------------- /docs/images/clean-mvp-component-based.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/docs/images/clean-mvp-component-based.jpg -------------------------------------------------------------------------------- /docs/images/clean_architecture_layers.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/docs/images/clean_architecture_layers.png -------------------------------------------------------------------------------- /docs/images/clean_architecture_layers_details.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/docs/images/clean_architecture_layers_details.png -------------------------------------------------------------------------------- /docs/images/event-data-flow.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/docs/images/event-data-flow.gif -------------------------------------------------------------------------------- /docs/images/js-mvp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/docs/images/js-mvp.png -------------------------------------------------------------------------------- /docs/images/usecase-flow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/docs/images/usecase-flow.png -------------------------------------------------------------------------------- /e2e/protractor.conf.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/e2e/protractor.conf.js -------------------------------------------------------------------------------- /e2e/src/app.e2e-spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/e2e/src/app.e2e-spec.ts -------------------------------------------------------------------------------- /e2e/src/app.po.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/e2e/src/app.po.ts -------------------------------------------------------------------------------- /e2e/tsconfig.e2e.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/e2e/tsconfig.e2e.json -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/package.json -------------------------------------------------------------------------------- /schematics/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/schematics/.gitignore -------------------------------------------------------------------------------- /schematics/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/schematics/README.md -------------------------------------------------------------------------------- /schematics/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/schematics/package.json -------------------------------------------------------------------------------- /schematics/src/collection.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/schematics/src/collection.json -------------------------------------------------------------------------------- /schematics/src/domain/files/__path__/__name@dasherize@if-flat__/model/__name@dasherize__.entity.ts: -------------------------------------------------------------------------------- 1 | export interface <%= classify(name) %>Entity { 2 | 3 | } 4 | -------------------------------------------------------------------------------- /schematics/src/domain/files/__path__/__name@dasherize@if-flat__/model/__name@dasherize__.model.ts: -------------------------------------------------------------------------------- 1 | export interface <%= classify(name) %>Model { 2 | 3 | } 4 | -------------------------------------------------------------------------------- /schematics/src/domain/files/__path__/__name@dasherize@if-flat__/repository/__name@dasherize__.repository.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/schematics/src/domain/files/__path__/__name@dasherize@if-flat__/repository/__name@dasherize__.repository.ts -------------------------------------------------------------------------------- /schematics/src/domain/files/__path__/__name@dasherize@if-flat__/repository/mapper/__name@dasherize__-repository.mapper.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/schematics/src/domain/files/__path__/__name@dasherize@if-flat__/repository/mapper/__name@dasherize__-repository.mapper.ts -------------------------------------------------------------------------------- /schematics/src/domain/files/__path__/__name@dasherize@if-flat__/usecases/__name@dasherize__.usecase.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/schematics/src/domain/files/__path__/__name@dasherize@if-flat__/usecases/__name@dasherize__.usecase.ts -------------------------------------------------------------------------------- /schematics/src/domain/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/schematics/src/domain/index.ts -------------------------------------------------------------------------------- /schematics/src/domain/index_spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/schematics/src/domain/index_spec.ts -------------------------------------------------------------------------------- /schematics/src/domain/schema.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/schematics/src/domain/schema.json -------------------------------------------------------------------------------- /schematics/src/domain/schema.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/schematics/src/domain/schema.ts -------------------------------------------------------------------------------- /schematics/tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/schematics/tsconfig.json -------------------------------------------------------------------------------- /schematics/yarn.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/schematics/yarn.lock -------------------------------------------------------------------------------- /src/app/app-routing.module.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/src/app/app-routing.module.ts -------------------------------------------------------------------------------- /src/app/app.component.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/src/app/app.component.html -------------------------------------------------------------------------------- /src/app/app.component.scss: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/app/app.component.spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/src/app/app.component.spec.ts -------------------------------------------------------------------------------- /src/app/app.component.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/src/app/app.component.ts -------------------------------------------------------------------------------- /src/app/app.module.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/src/app/app.module.ts -------------------------------------------------------------------------------- /src/app/core/base/mapper.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/src/app/core/base/mapper.ts -------------------------------------------------------------------------------- /src/app/core/base/use-case.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/src/app/core/base/use-case.ts -------------------------------------------------------------------------------- /src/app/core/core.module.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/src/app/core/core.module.ts -------------------------------------------------------------------------------- /src/app/core/services/auth.service.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/src/app/core/services/auth.service.ts -------------------------------------------------------------------------------- /src/app/domain/elephant/model/elephant.entity.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/src/app/domain/elephant/model/elephant.entity.ts -------------------------------------------------------------------------------- /src/app/domain/elephant/model/elephant.model.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/src/app/domain/elephant/model/elephant.model.ts -------------------------------------------------------------------------------- /src/app/domain/elephant/repository/elephant-web.repository.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/src/app/domain/elephant/repository/elephant-web.repository.ts -------------------------------------------------------------------------------- /src/app/domain/elephant/repository/mapper/elephant-web-repository.mapper.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/src/app/domain/elephant/repository/mapper/elephant-web-repository.mapper.ts -------------------------------------------------------------------------------- /src/app/domain/elephant/usecases/get-all-elephants.usecase.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/src/app/domain/elephant/usecases/get-all-elephants.usecase.ts -------------------------------------------------------------------------------- /src/app/domain/elephant/usecases/get-elephant-by-id-usecase.usecase.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/src/app/domain/elephant/usecases/get-elephant-by-id-usecase.usecase.ts -------------------------------------------------------------------------------- /src/app/features/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/app/pages/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/app/presentation/home/home.component.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/src/app/presentation/home/home.component.html -------------------------------------------------------------------------------- /src/app/presentation/home/home.component.scss: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/app/presentation/home/home.component.spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/src/app/presentation/home/home.component.spec.ts -------------------------------------------------------------------------------- /src/app/presentation/home/home.component.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/src/app/presentation/home/home.component.ts -------------------------------------------------------------------------------- /src/app/presentation/home/home.module.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/src/app/presentation/home/home.module.ts -------------------------------------------------------------------------------- /src/app/shared/components/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/app/shared/directives/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/app/shared/interceptors/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/app/shared/pipes/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/app/shared/shared.module.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/src/app/shared/shared.module.ts -------------------------------------------------------------------------------- /src/assets/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/browserslist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/src/browserslist -------------------------------------------------------------------------------- /src/environments/environment.prod.ts: -------------------------------------------------------------------------------- 1 | export const environment = { 2 | production: true 3 | }; 4 | -------------------------------------------------------------------------------- /src/environments/environment.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/src/environments/environment.ts -------------------------------------------------------------------------------- /src/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/src/favicon.ico -------------------------------------------------------------------------------- /src/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/src/index.html -------------------------------------------------------------------------------- /src/karma.conf.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/src/karma.conf.js -------------------------------------------------------------------------------- /src/main.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/src/main.ts -------------------------------------------------------------------------------- /src/polyfills.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/src/polyfills.ts -------------------------------------------------------------------------------- /src/styles.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/src/styles.scss -------------------------------------------------------------------------------- /src/test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/src/test.ts -------------------------------------------------------------------------------- /src/tsconfig.app.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/src/tsconfig.app.json -------------------------------------------------------------------------------- /src/tsconfig.spec.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/src/tsconfig.spec.json -------------------------------------------------------------------------------- /src/tslint.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/src/tslint.json -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/tsconfig.json -------------------------------------------------------------------------------- /tslint.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/tslint.json -------------------------------------------------------------------------------- /yarn.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/clean-frontend/HEAD/yarn.lock --------------------------------------------------------------------------------