PHP Domain Driven Design Starter: Base classes to implement Domain Driven Design

Recommend this page to a friend!
  Info   View files (32)   Download .zip   Reputation   Support forum   Blog    
Last Updated Ratings Unique User Downloads Download Rankings
2020-07-08 (25 days ago) Not yet rated by the usersTotal: 38 This week: 1All time: 9,904 This week: 242
Version License PHP version Categories
dddreveal 1.0.3MIT/X Consortium ...7Design Patterns, PHP 7
Description Author

This package provides base classes to implement Domain Driven Design.

It provides a collection of classes to start implementing applications that use the Domain Driven Design (DDD) and Command and Query Responsibility Segregation (CQRS) and ES (Event Sourcing).

Currently it provides classes for aggregates, events, object values, event store, commands, queries, services, dispatcher, listeners, message, event sourcing, etc..

Innovation Award
PHP Programming Innovation award nominee
July 2020
Domain Driven Design (DDD) is a concept for defining an approach to map abstract project concepts into a concrete implementation of software projects on which the abstract entities are mapped to specific concrete classes and interfaces.

Command and Query Responsibility Segregation (CQRS) is a pattern that defines that there may be different model objects that can be used to update the information that is necessary to store the model information.

Event Sourcing (ES) is an approach to keep track about the changes in the state of an application as a sequence of events.

This package provides abstract interfaces for defining objects to implement Domain Driven Design, Command and Query Responsibility Segregation and Event Sourcing in PHP.

Manuel Lemos
Picture of Laudir Bispo
  Performance   Level  
Name: Laudir Bispo <contact>
Classes: 7 packages by
Country: Brazil Brazil
Age: 27
All time rank: 2711191 in Brazil Brazil
Week rank: 246 8 in Brazil Brazil
Innovation award
Innovation award
Nominee: 2x



Domain Driven Design starter package

File Role Description
src (8 directories)
composer.json Data Auxiliary data
LICENSE Lic. License text Doc. Documentation

  Files  /  src  
File Role Description
Aggregate (5 files)
Commands (3 files)
Dispatcher (1 file)
Events (9 files)
EventStore (1 file, 1 directory)
Exceptions (1 file)
Repository (5 files)
Validators (3 files)

  Files  /  src  /  Aggregate  
File Role Description
   Aggregable.php Class Class source
   AggregateHistory.php Class Class source
   AggregateIdentifier.php Class Class source
   AggregateIsCorruptedException.php Class Class source
   AggregateRoot.php Class Class source

  Files  /  src  /  Commands  
File Role Description
   Commandable.php Class Class source
   Commanding.php Class Class source
   CommandValidator.php Class Class source

  Files  /  src  /  Dispatcher  
File Role Description
   ListenerDispatcher.php Class Class source

  Files  /  src  /  Events  
File Role Description
   AbstractEvent.php Class Class source
   DomainEvent.php Class Class source
   EventIsSourced.php Class Class source
   EventListener.php Class Class source
   EventSourceDisabledException.php Class Class source
   EventStoreUnavailableException.php Class Class source
   InvalidEventException.php Class Class source
   ReconstituteEvents...ilableException.php Class Class source
   RecordedEvents.php Class Class source

  Files  /  src  /  EventStore  
File Role Description
PDO (1 file)
   EventStore.php Class Class source

  Files  /  src  /  EventStore  /  PDO  
File Role Description
   PDOEventStore.php Class Class source

  Files  /  src  /  Exceptions  
File Role Description
   StorageException.php Class Class source

  Files  /  src  /  Repository  
File Role Description
   AbstractRepository.php Class Class source
   BaseProjection.php Class Class source
   Projectable.php Class Class source
   QueryRepository.php Class Class source
   Repository.php Class Class source

  Files  /  src  /  Validators  
File Role Description
   Assert.php Class Class source
   AssertionValidationTrait.php Class Class source
   UuidValidator.php Class Class source 22KB
dddreveal-2020-07-08.tar.gz 8KB
Install with Composer
Needed packages  
Class DownloadWhy it is needed Dependency
Get PHP Class Name .zip .tar.gz ... Required
 Version Control Unique User Downloads Download Rankings  
This week:1
All time:9,904
This week:242

For more information send a message to info at phpclasses dot org.