Gacela Project

Gacela is a PHP class resolver that helps you improve the design of your application by splitting the logic into different modules.

Splitting your project into different modules will help its design in terms of maintainability and scalability. It will certainly encourage your modules to interact with each other in a unified way by following these rules:

  • Modules interact with each other only via their Facade.
  • The Facade has access to the Factory.
  • The Factory creates the module's objects.
  • The Config is accessible from the Factory.
  • The Dependency Provider gets other Facades.


composer require gacela-project/gacela


You can see an example of a module using gacela in this repository.