src/Module.php
public function loadDependencies()
    {
        // load the apis config
        $config = ConfigService::fetch(dirname(__DIR__));
        // load the app config
        $config = array_merge($config, ConfigService::fetch());

        $moduleService = new ModuleService;
        if (! array_key_exists('slim-api', $config)) {
            $config['slim-api'] = [
                'modules' => [
                    'SlimApi\Phinx', //provides migrations
                    'SlimApi\Mvc' //provides structure
                ]
            ];
        } else {
            // load the target autoloader
            require 'vendor/autoload.php';
        }

        foreach ($config['slim-api']['modules'] as $moduleNamespace) {
            $config = array_merge($config, $moduleService->load($moduleNamespace));
        }

        return $config;
    }
public function loadDependencies()
    {
        // load the apis config
        $config = ConfigService::fetch(dirname(__DIR__));
        // load the app config
        $config = array_merge($config, ConfigService::fetch());

        $moduleService = new ModuleService;
        if (! array_key_exists('slim-api', $config)) {
            $config['slim-api'] = [
                'modules' => [
                    'SlimApi\Phinx', //provides migrations
                    'SlimApi\Mvc' //provides structure
                ]
            ];
        } else {
            // load the target autoloader
            require 'vendor/autoload.php';
        }

        foreach ($config['slim-api']['modules'] as $moduleNamespace) {
            $config = array_merge($config, $moduleService->load($moduleNamespace));
        }

        return $config;
    }
load the dependencies for the module.