Skip to content

Example of how to organize symfony application to match guidelines of hexagonal architecture

Notifications You must be signed in to change notification settings

cargarg7/hexagonal-symfony

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

idea behind the structure:

src/
    /Acme - application code
        /Bundle - contains one application bundle that integrates our application with framework. ONLY THESE CLASSES ARE AWARE
                  of the framework we are using.
        /Domain - domain code, business rules & PORTS definitions. These classes are NOT aware of the framework NOR the infrastructure
        /Infrastructure - ADAPTERS implementations & classes that these implementations are using (dependencies of the adapters itself)
        /UseCase - use cases implementations. These are NOT aware of the infrastructure NOR framework
    /YourCompany - contains general libraries, not connected directly with the domain & our application (like log & cache libraries)
        /Bundle - symfony bundles that integrates the general-purpose libraries
        /Component - general-purpose libraries

About

Example of how to organize symfony application to match guidelines of hexagonal architecture

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages