Skip to content
This repository has been archived by the owner on Aug 21, 2021. It is now read-only.
/ hexagonal-cake Public archive

Hexagonal Architecture Application with CakePHP and a DIC - Could be used as a template in theory but for now its a learning project

License

Notifications You must be signed in to change notification settings

burzum/hexagonal-cake

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Hexagonal Application Skeleton using CakePHP 3.6+

This is a pure learning project and proof of concept! NOT ready for production!

A hexagonal architecture is using ports and adapters to communicate and separate different layers of your application.

This application skeleton is trying to implement a hexagonal architecture using the goodies of the CakePHP framework.

Goals

  • Learning something about software architecture
  • Stay PSR compatible with all interfaces if possible
  • Follow php-pds
  • Using DI container
  • Use IoC where it makes sense
  • Typehint almost everything
  • Using a command bus (but no CQRS)

Installation

  • Clone the repository git@github.com:burzum/hexagonal-cake.git
  • Go into the folder cd hexagonal-cake
  • Run composer composer install
  • Copy config/app.default.php to config/app.php
  • Configure the database connection in your app.php
  • Point your web server config for the host you are using to the public folder
  • Done

Documentation

Check the docs folder of this repository.

Additional Libs besides CakePHP

Useful links

License

Copyright Florian Krämer

Licensed under the MIT License. Redistributions of the source code included in this repository must retain the copyright notice found in each file.

About

Hexagonal Architecture Application with CakePHP and a DIC - Could be used as a template in theory but for now its a learning project

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages