├── .env ├── .gitignore ├── README.md ├── bin └── console ├── composer.json ├── composer.lock ├── config ├── api_platform │ └── User │ │ └── User.yaml ├── bundles.php ├── packages │ ├── api_platform.yaml │ ├── cache.yaml │ ├── dev │ │ └── web_profiler.yaml │ ├── doctrine.yaml │ ├── doctrine │ │ ├── dbal │ │ │ └── type │ │ │ │ ├── date_time.yaml │ │ │ │ └── string.yaml │ │ └── orm │ │ │ └── mapping │ │ │ └── user.yaml │ ├── doctrine_migrations.yaml │ ├── framework.yaml │ ├── lexik_jwt_authentication.yaml │ ├── messenger.yaml │ ├── nelmio_cors.yaml │ ├── prod │ │ ├── doctrine.yaml │ │ └── routing.yaml │ ├── ramsey_uuid_doctrine.yaml │ ├── routing.yaml │ ├── security.yaml │ ├── test │ │ ├── framework.yaml │ │ ├── twig.yaml │ │ ├── validator.yaml │ │ └── web_profiler.yaml │ ├── twig.yaml │ ├── validator.yaml │ └── workflow.yaml ├── routes.yaml ├── routes │ ├── annotations.yaml │ ├── api_platform.yaml │ └── dev │ │ ├── framework.yaml │ │ └── web_profiler.yaml └── services.yaml ├── etc └── docs │ ├── clean_architecture.png │ └── domain_model.png ├── public └── index.php ├── src ├── Application │ ├── Process │ │ └── Manager │ │ │ ├── AbstractProcessManager.php │ │ │ └── SendLoginSecurityNotification.php │ └── UseCase │ │ ├── Command │ │ └── User │ │ │ ├── ChangeEmail │ │ │ ├── ChangeEmailCommand.php │ │ │ ├── ChangeEmailCommandHandler.php │ │ │ ├── ChangeEmailDataTransformer.php │ │ │ └── ChangeEmailInput.php │ │ │ ├── SignIn │ │ │ ├── SignInCommand.php │ │ │ └── SignInCommandHandler.php │ │ │ └── SignUp │ │ │ ├── SignUpCommand.php │ │ │ ├── SignUpCommandHandler.php │ │ │ ├── SignUpInput.php │ │ │ └── SignUpInputDataTransformer.php │ │ └── Query │ │ ├── CollectionQuery.php │ │ ├── CollectionQueryFactory.php │ │ └── User │ │ ├── FindByEmail │ │ ├── FindByEmailQuery.php │ │ └── FindByEmailQueryHandler.php │ │ └── GetUsers │ │ ├── GetUsersQuery.php │ │ ├── GetUsersQueryDataTransformer.php │ │ └── GetUsersQueryHandler.php ├── Domain │ ├── AggregateRootBehaviourTrait.php │ ├── AggregateRootInterface.php │ ├── Shared │ │ ├── .gitignore │ │ ├── Event │ │ │ └── DomainEventInterface.php │ │ ├── Exception │ │ │ ├── BusinessRuleValidationException.php │ │ │ ├── DateTimeException.php │ │ │ └── NonUniqueUuidException.php │ │ ├── Query │ │ │ └── Exception │ │ │ │ └── NotFoundException.php │ │ ├── Specification │ │ │ ├── Checker │ │ │ │ └── AggregateRootUniquenessCheckerInterface.php │ │ │ └── Rule │ │ │ │ └── BusinessRuleSpecificationInterface.php │ │ └── ValueObject │ │ │ ├── DateTime.php │ │ │ └── Specification │ │ │ └── BusinessRuleValidationMessage.php │ └── User │ │ ├── Event │ │ ├── UserEmailChanged.php │ │ ├── UserSignedIn.php │ │ └── UserWasCreated.php │ │ ├── Exception │ │ ├── EmailAlreadyExistException.php │ │ ├── ForbiddenException.php │ │ └── InvalidCredentialsException.php │ │ ├── Repository │ │ ├── CheckUserByEmailInterface.php │ │ ├── GetUserByEmailInterface.php │ │ ├── GetUserByUuidInterface.php │ │ ├── GetUserCredentialsByEmailInterface.php │ │ ├── GetUserUuidByEmailInterface.php │ │ └── UserRepositoryInterface.php │ │ ├── Specification │ │ ├── Checker │ │ │ ├── CustomerEmailUniquenessCheckerInterface.php │ │ │ └── CustomerUniquenessCheckerInterface.php │ │ └── Rule │ │ │ ├── CustomerEmailMustBeUniqueRule.php │ │ │ └── CustomerMustBeUniqueRule.php │ │ ├── User.php │ │ └── ValueObject │ │ ├── Auth │ │ ├── Credentials.php │ │ └── HashedPassword.php │ │ └── Email.php ├── Infrastructure │ ├── Bridge │ │ ├── ApiPlatform │ │ │ ├── DataProvider │ │ │ │ ├── CollectionQueryDataProvider.php │ │ │ │ └── ItemQueryDataProvider.php │ │ │ ├── DataTransformer │ │ │ │ ├── AbstractView.php │ │ │ │ └── ViewDataTransformer.php │ │ │ ├── Event │ │ │ │ └── DomainEventDispatcher.php │ │ │ ├── Serializer │ │ │ │ └── SerializerContextBuilder.php │ │ │ └── Swagger │ │ │ │ └── AuthSwaggerDecorator.php │ │ └── Doctrine │ │ │ └── Event │ │ │ └── DomainEventCollector.php │ ├── Kernel.php │ ├── Shared │ │ ├── Bus │ │ │ ├── Command │ │ │ │ ├── CommandBus.php │ │ │ │ ├── CommandHandlerInterface.php │ │ │ │ └── CommandInterface.php │ │ │ ├── Event │ │ │ │ ├── EventBus.php │ │ │ │ └── EventHandlerInterface.php │ │ │ ├── MessageBusExceptionTrait.php │ │ │ └── Query │ │ │ │ ├── QueryBus.php │ │ │ │ ├── QueryHandlerInterface.php │ │ │ │ └── QueryInterface.php │ │ ├── Doctrine │ │ │ ├── DateTimeType.php │ │ │ ├── EmailType.php │ │ │ └── HashedPasswordType.php │ │ ├── Migration │ │ │ ├── 2020 │ │ │ │ └── 09 │ │ │ │ │ ├── Version20200911083124.php │ │ │ │ │ └── Version20200914130922.php │ │ │ └── .gitignore │ │ └── Query │ │ │ └── Repository │ │ │ └── AbstractMysqlRepository.php │ └── User │ │ ├── Auth │ │ ├── Auth.php │ │ ├── AuthProvider.php │ │ ├── EventListener │ │ │ └── JWTEventSubscriber.php │ │ └── Guard │ │ │ └── LoginAuthenticator.php │ │ ├── Doctrine │ │ └── Orm │ │ │ └── Mapping │ │ │ ├── User.orm.xml │ │ │ └── ValueObject.Auth.Credentials.orm.xml │ │ ├── Query │ │ └── Mysql │ │ │ └── MysqlReadModelUserRepository.php │ │ ├── Repository │ │ └── UserStore.php │ │ ├── Security │ │ └── Voter │ │ │ └── UserVoter.php │ │ └── Specification │ │ ├── CustomerEmailUniquenessChecker.php │ │ └── CustomerUniquenessChecker.php └── UI │ ├── Cli │ └── .gitignore │ └── Http │ ├── Rest │ ├── Controller │ │ ├── .gitignore │ │ ├── QueryController.php │ │ └── User │ │ │ └── GetUserByEmailController.php │ └── Presentation │ │ └── User │ │ ├── UserProfileView.php │ │ └── UserView.php │ └── Web │ └── Controller │ └── .gitignore ├── symfony.lock ├── templates └── base.html.twig └── tests └── .gitignore /.env: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/.env -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/.gitignore -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/README.md -------------------------------------------------------------------------------- /bin/console: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/bin/console -------------------------------------------------------------------------------- /composer.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/composer.json -------------------------------------------------------------------------------- /composer.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/composer.lock -------------------------------------------------------------------------------- /config/api_platform/User/User.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/config/api_platform/User/User.yaml -------------------------------------------------------------------------------- /config/bundles.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/config/bundles.php -------------------------------------------------------------------------------- /config/packages/api_platform.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/config/packages/api_platform.yaml -------------------------------------------------------------------------------- /config/packages/cache.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/config/packages/cache.yaml -------------------------------------------------------------------------------- /config/packages/dev/web_profiler.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/config/packages/dev/web_profiler.yaml -------------------------------------------------------------------------------- /config/packages/doctrine.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/config/packages/doctrine.yaml -------------------------------------------------------------------------------- /config/packages/doctrine/dbal/type/date_time.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/config/packages/doctrine/dbal/type/date_time.yaml -------------------------------------------------------------------------------- /config/packages/doctrine/dbal/type/string.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/config/packages/doctrine/dbal/type/string.yaml -------------------------------------------------------------------------------- /config/packages/doctrine/orm/mapping/user.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/config/packages/doctrine/orm/mapping/user.yaml -------------------------------------------------------------------------------- /config/packages/doctrine_migrations.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/config/packages/doctrine_migrations.yaml -------------------------------------------------------------------------------- /config/packages/framework.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/config/packages/framework.yaml -------------------------------------------------------------------------------- /config/packages/lexik_jwt_authentication.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/config/packages/lexik_jwt_authentication.yaml -------------------------------------------------------------------------------- /config/packages/messenger.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/config/packages/messenger.yaml -------------------------------------------------------------------------------- /config/packages/nelmio_cors.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/config/packages/nelmio_cors.yaml -------------------------------------------------------------------------------- /config/packages/prod/doctrine.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/config/packages/prod/doctrine.yaml -------------------------------------------------------------------------------- /config/packages/prod/routing.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/config/packages/prod/routing.yaml -------------------------------------------------------------------------------- /config/packages/ramsey_uuid_doctrine.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/config/packages/ramsey_uuid_doctrine.yaml -------------------------------------------------------------------------------- /config/packages/routing.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/config/packages/routing.yaml -------------------------------------------------------------------------------- /config/packages/security.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/config/packages/security.yaml -------------------------------------------------------------------------------- /config/packages/test/framework.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/config/packages/test/framework.yaml -------------------------------------------------------------------------------- /config/packages/test/twig.yaml: -------------------------------------------------------------------------------- 1 | twig: 2 | strict_variables: true 3 | -------------------------------------------------------------------------------- /config/packages/test/validator.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/config/packages/test/validator.yaml -------------------------------------------------------------------------------- /config/packages/test/web_profiler.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/config/packages/test/web_profiler.yaml -------------------------------------------------------------------------------- /config/packages/twig.yaml: -------------------------------------------------------------------------------- 1 | twig: 2 | default_path: '%kernel.project_dir%/templates' 3 | -------------------------------------------------------------------------------- /config/packages/validator.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/config/packages/validator.yaml -------------------------------------------------------------------------------- /config/packages/workflow.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/config/packages/workflow.yaml -------------------------------------------------------------------------------- /config/routes.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/config/routes.yaml -------------------------------------------------------------------------------- /config/routes/annotations.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/config/routes/annotations.yaml -------------------------------------------------------------------------------- /config/routes/api_platform.yaml: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /config/routes/dev/framework.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/config/routes/dev/framework.yaml -------------------------------------------------------------------------------- /config/routes/dev/web_profiler.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/config/routes/dev/web_profiler.yaml -------------------------------------------------------------------------------- /config/services.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/config/services.yaml -------------------------------------------------------------------------------- /etc/docs/clean_architecture.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/etc/docs/clean_architecture.png -------------------------------------------------------------------------------- /etc/docs/domain_model.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/etc/docs/domain_model.png -------------------------------------------------------------------------------- /public/index.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/public/index.php -------------------------------------------------------------------------------- /src/Application/Process/Manager/AbstractProcessManager.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Application/Process/Manager/AbstractProcessManager.php -------------------------------------------------------------------------------- /src/Application/Process/Manager/SendLoginSecurityNotification.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Application/Process/Manager/SendLoginSecurityNotification.php -------------------------------------------------------------------------------- /src/Application/UseCase/Command/User/ChangeEmail/ChangeEmailCommand.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Application/UseCase/Command/User/ChangeEmail/ChangeEmailCommand.php -------------------------------------------------------------------------------- /src/Application/UseCase/Command/User/ChangeEmail/ChangeEmailCommandHandler.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Application/UseCase/Command/User/ChangeEmail/ChangeEmailCommandHandler.php -------------------------------------------------------------------------------- /src/Application/UseCase/Command/User/ChangeEmail/ChangeEmailDataTransformer.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Application/UseCase/Command/User/ChangeEmail/ChangeEmailDataTransformer.php -------------------------------------------------------------------------------- /src/Application/UseCase/Command/User/ChangeEmail/ChangeEmailInput.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Application/UseCase/Command/User/ChangeEmail/ChangeEmailInput.php -------------------------------------------------------------------------------- /src/Application/UseCase/Command/User/SignIn/SignInCommand.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Application/UseCase/Command/User/SignIn/SignInCommand.php -------------------------------------------------------------------------------- /src/Application/UseCase/Command/User/SignIn/SignInCommandHandler.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Application/UseCase/Command/User/SignIn/SignInCommandHandler.php -------------------------------------------------------------------------------- /src/Application/UseCase/Command/User/SignUp/SignUpCommand.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Application/UseCase/Command/User/SignUp/SignUpCommand.php -------------------------------------------------------------------------------- /src/Application/UseCase/Command/User/SignUp/SignUpCommandHandler.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Application/UseCase/Command/User/SignUp/SignUpCommandHandler.php -------------------------------------------------------------------------------- /src/Application/UseCase/Command/User/SignUp/SignUpInput.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Application/UseCase/Command/User/SignUp/SignUpInput.php -------------------------------------------------------------------------------- /src/Application/UseCase/Command/User/SignUp/SignUpInputDataTransformer.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Application/UseCase/Command/User/SignUp/SignUpInputDataTransformer.php -------------------------------------------------------------------------------- /src/Application/UseCase/Query/CollectionQuery.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Application/UseCase/Query/CollectionQuery.php -------------------------------------------------------------------------------- /src/Application/UseCase/Query/CollectionQueryFactory.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Application/UseCase/Query/CollectionQueryFactory.php -------------------------------------------------------------------------------- /src/Application/UseCase/Query/User/FindByEmail/FindByEmailQuery.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Application/UseCase/Query/User/FindByEmail/FindByEmailQuery.php -------------------------------------------------------------------------------- /src/Application/UseCase/Query/User/FindByEmail/FindByEmailQueryHandler.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Application/UseCase/Query/User/FindByEmail/FindByEmailQueryHandler.php -------------------------------------------------------------------------------- /src/Application/UseCase/Query/User/GetUsers/GetUsersQuery.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Application/UseCase/Query/User/GetUsers/GetUsersQuery.php -------------------------------------------------------------------------------- /src/Application/UseCase/Query/User/GetUsers/GetUsersQueryDataTransformer.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Application/UseCase/Query/User/GetUsers/GetUsersQueryDataTransformer.php -------------------------------------------------------------------------------- /src/Application/UseCase/Query/User/GetUsers/GetUsersQueryHandler.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Application/UseCase/Query/User/GetUsers/GetUsersQueryHandler.php -------------------------------------------------------------------------------- /src/Domain/AggregateRootBehaviourTrait.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Domain/AggregateRootBehaviourTrait.php -------------------------------------------------------------------------------- /src/Domain/AggregateRootInterface.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Domain/AggregateRootInterface.php -------------------------------------------------------------------------------- /src/Domain/Shared/.gitignore: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/Domain/Shared/Event/DomainEventInterface.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Domain/Shared/Event/DomainEventInterface.php -------------------------------------------------------------------------------- /src/Domain/Shared/Exception/BusinessRuleValidationException.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Domain/Shared/Exception/BusinessRuleValidationException.php -------------------------------------------------------------------------------- /src/Domain/Shared/Exception/DateTimeException.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Domain/Shared/Exception/DateTimeException.php -------------------------------------------------------------------------------- /src/Domain/Shared/Exception/NonUniqueUuidException.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Domain/Shared/Exception/NonUniqueUuidException.php -------------------------------------------------------------------------------- /src/Domain/Shared/Query/Exception/NotFoundException.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Domain/Shared/Query/Exception/NotFoundException.php -------------------------------------------------------------------------------- /src/Domain/Shared/Specification/Checker/AggregateRootUniquenessCheckerInterface.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Domain/Shared/Specification/Checker/AggregateRootUniquenessCheckerInterface.php -------------------------------------------------------------------------------- /src/Domain/Shared/Specification/Rule/BusinessRuleSpecificationInterface.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Domain/Shared/Specification/Rule/BusinessRuleSpecificationInterface.php -------------------------------------------------------------------------------- /src/Domain/Shared/ValueObject/DateTime.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Domain/Shared/ValueObject/DateTime.php -------------------------------------------------------------------------------- /src/Domain/Shared/ValueObject/Specification/BusinessRuleValidationMessage.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Domain/Shared/ValueObject/Specification/BusinessRuleValidationMessage.php -------------------------------------------------------------------------------- /src/Domain/User/Event/UserEmailChanged.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Domain/User/Event/UserEmailChanged.php -------------------------------------------------------------------------------- /src/Domain/User/Event/UserSignedIn.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Domain/User/Event/UserSignedIn.php -------------------------------------------------------------------------------- /src/Domain/User/Event/UserWasCreated.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Domain/User/Event/UserWasCreated.php -------------------------------------------------------------------------------- /src/Domain/User/Exception/EmailAlreadyExistException.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Domain/User/Exception/EmailAlreadyExistException.php -------------------------------------------------------------------------------- /src/Domain/User/Exception/ForbiddenException.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Domain/User/Exception/ForbiddenException.php -------------------------------------------------------------------------------- /src/Domain/User/Exception/InvalidCredentialsException.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Domain/User/Exception/InvalidCredentialsException.php -------------------------------------------------------------------------------- /src/Domain/User/Repository/CheckUserByEmailInterface.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Domain/User/Repository/CheckUserByEmailInterface.php -------------------------------------------------------------------------------- /src/Domain/User/Repository/GetUserByEmailInterface.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Domain/User/Repository/GetUserByEmailInterface.php -------------------------------------------------------------------------------- /src/Domain/User/Repository/GetUserByUuidInterface.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Domain/User/Repository/GetUserByUuidInterface.php -------------------------------------------------------------------------------- /src/Domain/User/Repository/GetUserCredentialsByEmailInterface.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Domain/User/Repository/GetUserCredentialsByEmailInterface.php -------------------------------------------------------------------------------- /src/Domain/User/Repository/GetUserUuidByEmailInterface.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Domain/User/Repository/GetUserUuidByEmailInterface.php -------------------------------------------------------------------------------- /src/Domain/User/Repository/UserRepositoryInterface.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Domain/User/Repository/UserRepositoryInterface.php -------------------------------------------------------------------------------- /src/Domain/User/Specification/Checker/CustomerEmailUniquenessCheckerInterface.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Domain/User/Specification/Checker/CustomerEmailUniquenessCheckerInterface.php -------------------------------------------------------------------------------- /src/Domain/User/Specification/Checker/CustomerUniquenessCheckerInterface.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Domain/User/Specification/Checker/CustomerUniquenessCheckerInterface.php -------------------------------------------------------------------------------- /src/Domain/User/Specification/Rule/CustomerEmailMustBeUniqueRule.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Domain/User/Specification/Rule/CustomerEmailMustBeUniqueRule.php -------------------------------------------------------------------------------- /src/Domain/User/Specification/Rule/CustomerMustBeUniqueRule.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Domain/User/Specification/Rule/CustomerMustBeUniqueRule.php -------------------------------------------------------------------------------- /src/Domain/User/User.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Domain/User/User.php -------------------------------------------------------------------------------- /src/Domain/User/ValueObject/Auth/Credentials.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Domain/User/ValueObject/Auth/Credentials.php -------------------------------------------------------------------------------- /src/Domain/User/ValueObject/Auth/HashedPassword.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Domain/User/ValueObject/Auth/HashedPassword.php -------------------------------------------------------------------------------- /src/Domain/User/ValueObject/Email.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Domain/User/ValueObject/Email.php -------------------------------------------------------------------------------- /src/Infrastructure/Bridge/ApiPlatform/DataProvider/CollectionQueryDataProvider.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Infrastructure/Bridge/ApiPlatform/DataProvider/CollectionQueryDataProvider.php -------------------------------------------------------------------------------- /src/Infrastructure/Bridge/ApiPlatform/DataProvider/ItemQueryDataProvider.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Infrastructure/Bridge/ApiPlatform/DataProvider/ItemQueryDataProvider.php -------------------------------------------------------------------------------- /src/Infrastructure/Bridge/ApiPlatform/DataTransformer/AbstractView.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Infrastructure/Bridge/ApiPlatform/DataTransformer/AbstractView.php -------------------------------------------------------------------------------- /src/Infrastructure/Bridge/ApiPlatform/DataTransformer/ViewDataTransformer.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Infrastructure/Bridge/ApiPlatform/DataTransformer/ViewDataTransformer.php -------------------------------------------------------------------------------- /src/Infrastructure/Bridge/ApiPlatform/Event/DomainEventDispatcher.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Infrastructure/Bridge/ApiPlatform/Event/DomainEventDispatcher.php -------------------------------------------------------------------------------- /src/Infrastructure/Bridge/ApiPlatform/Serializer/SerializerContextBuilder.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Infrastructure/Bridge/ApiPlatform/Serializer/SerializerContextBuilder.php -------------------------------------------------------------------------------- /src/Infrastructure/Bridge/ApiPlatform/Swagger/AuthSwaggerDecorator.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Infrastructure/Bridge/ApiPlatform/Swagger/AuthSwaggerDecorator.php -------------------------------------------------------------------------------- /src/Infrastructure/Bridge/Doctrine/Event/DomainEventCollector.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Infrastructure/Bridge/Doctrine/Event/DomainEventCollector.php -------------------------------------------------------------------------------- /src/Infrastructure/Kernel.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Infrastructure/Kernel.php -------------------------------------------------------------------------------- /src/Infrastructure/Shared/Bus/Command/CommandBus.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Infrastructure/Shared/Bus/Command/CommandBus.php -------------------------------------------------------------------------------- /src/Infrastructure/Shared/Bus/Command/CommandHandlerInterface.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Infrastructure/Shared/Bus/Command/CommandHandlerInterface.php -------------------------------------------------------------------------------- /src/Infrastructure/Shared/Bus/Command/CommandInterface.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Infrastructure/Shared/Bus/Command/CommandInterface.php -------------------------------------------------------------------------------- /src/Infrastructure/Shared/Bus/Event/EventBus.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Infrastructure/Shared/Bus/Event/EventBus.php -------------------------------------------------------------------------------- /src/Infrastructure/Shared/Bus/Event/EventHandlerInterface.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Infrastructure/Shared/Bus/Event/EventHandlerInterface.php -------------------------------------------------------------------------------- /src/Infrastructure/Shared/Bus/MessageBusExceptionTrait.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Infrastructure/Shared/Bus/MessageBusExceptionTrait.php -------------------------------------------------------------------------------- /src/Infrastructure/Shared/Bus/Query/QueryBus.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Infrastructure/Shared/Bus/Query/QueryBus.php -------------------------------------------------------------------------------- /src/Infrastructure/Shared/Bus/Query/QueryHandlerInterface.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Infrastructure/Shared/Bus/Query/QueryHandlerInterface.php -------------------------------------------------------------------------------- /src/Infrastructure/Shared/Bus/Query/QueryInterface.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Infrastructure/Shared/Bus/Query/QueryInterface.php -------------------------------------------------------------------------------- /src/Infrastructure/Shared/Doctrine/DateTimeType.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Infrastructure/Shared/Doctrine/DateTimeType.php -------------------------------------------------------------------------------- /src/Infrastructure/Shared/Doctrine/EmailType.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Infrastructure/Shared/Doctrine/EmailType.php -------------------------------------------------------------------------------- /src/Infrastructure/Shared/Doctrine/HashedPasswordType.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Infrastructure/Shared/Doctrine/HashedPasswordType.php -------------------------------------------------------------------------------- /src/Infrastructure/Shared/Migration/.gitignore: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/Infrastructure/Shared/Migration/2020/09/Version20200911083124.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Infrastructure/Shared/Migration/2020/09/Version20200911083124.php -------------------------------------------------------------------------------- /src/Infrastructure/Shared/Migration/2020/09/Version20200914130922.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Infrastructure/Shared/Migration/2020/09/Version20200914130922.php -------------------------------------------------------------------------------- /src/Infrastructure/Shared/Query/Repository/AbstractMysqlRepository.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Infrastructure/Shared/Query/Repository/AbstractMysqlRepository.php -------------------------------------------------------------------------------- /src/Infrastructure/User/Auth/Auth.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Infrastructure/User/Auth/Auth.php -------------------------------------------------------------------------------- /src/Infrastructure/User/Auth/AuthProvider.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Infrastructure/User/Auth/AuthProvider.php -------------------------------------------------------------------------------- /src/Infrastructure/User/Auth/EventListener/JWTEventSubscriber.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Infrastructure/User/Auth/EventListener/JWTEventSubscriber.php -------------------------------------------------------------------------------- /src/Infrastructure/User/Auth/Guard/LoginAuthenticator.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Infrastructure/User/Auth/Guard/LoginAuthenticator.php -------------------------------------------------------------------------------- /src/Infrastructure/User/Doctrine/Orm/Mapping/User.orm.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Infrastructure/User/Doctrine/Orm/Mapping/User.orm.xml -------------------------------------------------------------------------------- /src/Infrastructure/User/Doctrine/Orm/Mapping/ValueObject.Auth.Credentials.orm.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Infrastructure/User/Doctrine/Orm/Mapping/ValueObject.Auth.Credentials.orm.xml -------------------------------------------------------------------------------- /src/Infrastructure/User/Query/Mysql/MysqlReadModelUserRepository.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Infrastructure/User/Query/Mysql/MysqlReadModelUserRepository.php -------------------------------------------------------------------------------- /src/Infrastructure/User/Repository/UserStore.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Infrastructure/User/Repository/UserStore.php -------------------------------------------------------------------------------- /src/Infrastructure/User/Security/Voter/UserVoter.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Infrastructure/User/Security/Voter/UserVoter.php -------------------------------------------------------------------------------- /src/Infrastructure/User/Specification/CustomerEmailUniquenessChecker.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Infrastructure/User/Specification/CustomerEmailUniquenessChecker.php -------------------------------------------------------------------------------- /src/Infrastructure/User/Specification/CustomerUniquenessChecker.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/Infrastructure/User/Specification/CustomerUniquenessChecker.php -------------------------------------------------------------------------------- /src/UI/Cli/.gitignore: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/UI/Http/Rest/Controller/.gitignore: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/UI/Http/Rest/Controller/QueryController.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/UI/Http/Rest/Controller/QueryController.php -------------------------------------------------------------------------------- /src/UI/Http/Rest/Controller/User/GetUserByEmailController.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/UI/Http/Rest/Controller/User/GetUserByEmailController.php -------------------------------------------------------------------------------- /src/UI/Http/Rest/Presentation/User/UserProfileView.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/UI/Http/Rest/Presentation/User/UserProfileView.php -------------------------------------------------------------------------------- /src/UI/Http/Rest/Presentation/User/UserView.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/src/UI/Http/Rest/Presentation/User/UserView.php -------------------------------------------------------------------------------- /src/UI/Http/Web/Controller/.gitignore: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /symfony.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/symfony.lock -------------------------------------------------------------------------------- /templates/base.html.twig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mxkh/symfony-api-platform-ddd-cqrs-boilerplate/HEAD/templates/base.html.twig -------------------------------------------------------------------------------- /tests/.gitignore: -------------------------------------------------------------------------------- 1 | --------------------------------------------------------------------------------