{"id":16078324,"url":"https://github.com/prolic/humusmvc","last_synced_at":"2025-07-17T19:37:51.983Z","repository":{"id":4661423,"uuid":"5807330","full_name":"prolic/HumusMvc","owner":"prolic","description":"HumusMvc integrates Zend Framework 2's ModuleManager and ServiceManager in a ZF1 application","archived":false,"fork":false,"pushed_at":"2015-09-23T12:12:05.000Z","size":382,"stargazers_count":12,"open_issues_count":0,"forks_count":4,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-02-28T07:35:00.359Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/prolic.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2012-09-14T09:29:53.000Z","updated_at":"2019-01-29T19:21:15.000Z","dependencies_parsed_at":"2022-08-06T17:16:38.347Z","dependency_job_id":null,"html_url":"https://github.com/prolic/HumusMvc","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/prolic%2FHumusMvc","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/prolic%2FHumusMvc/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/prolic%2FHumusMvc/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/prolic%2FHumusMvc/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/prolic","download_url":"https://codeload.github.com/prolic/HumusMvc/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243903182,"owners_count":20366438,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-10-09T10:11:42.180Z","updated_at":"2025-03-18T05:31:27.784Z","avatar_url":"https://github.com/prolic.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"HumusMvc\n====================\n\n[![Dependency Status](https://www.versioneye.com/package/php:prolic:humus-mvc/badge.png)](https://www.versioneye.com/package/php:prolic:humus-mvc)\n[![Total Downloads](https://poser.pugx.org/prolic/Humus-Mvc/downloads.png)](https://packagist.org/packages/prolic/Humus-Mvc)\n[![Latest Stable Version](https://poser.pugx.org/prolic/Humus-Mvc/v/stable.png)](https://packagist.org/packages/prolic/Humus-Mvc)\n[![Latest Unstable Version](https://poser.pugx.org/prolic/Humus-Mvc/v/unstable.png)](https://packagist.org/packages/prolic/Humus-Mvc)\n\nHumusMvc integrates Zend Framework 2's ModuleManager and ServiceManager in a ZF1 application. There is also a [HumusMvcSkeletonApplication](https://github.com/prolic/HumusMvcSkeletonApplication). No Zend_Application will be used any more.\n\nDependencies\n------------\n\n -  [ZendFramework 2.x](https://github.com/zendframework/zf2)\n -  [ZendFramework 1.12.x](http://framework.zend.com)\n -  Any application similar to the\n    [HumusMvcSkeletonApplication](https://github.com/prolic/HumusMvcSkeletonApplication)\n\nInstallation\n------------\n\nUsually you would install HumusMvc in the HumusMvcSkeletonApplication. If you want to follow that steps, please take a look at the installation instructions of the HumusMvcSkeletonApplication.\n\nHowever, you can install HumusMvc in your custom skeleton application:\n\n 1.  Add `\"prolic/humus-mvc\": \"dev-master\"` to your `composer.json`\n 2.  Run `php composer.phar install`\n\nFeatures / Goals\n----------------\n\n - add possibility to use view helpers with service locator [COMPLETE]\n - add possibility to use action helpers with service locator [COMPLETE]\n - add possibility to use controller plugins with service locator [COMPLETE]\n - configure Zend_Controller_Front with service locator [COMPLETE]\n - add tests [INCOMPLETE]\n - refactore translation service [COMPLETE]\n - create Zf1MvcListenerAggregate and collect all mvc resources here [INCOMPLETE]\n - locale (Zend_Locale) will be created and stored in registry on every request [COMPLETE]\n - make dispatching event based [COMPLETE]\n - add documentation [INCOMPLETE]\n\nView Helpers\n------------\n\n- When a Zend_Translate or Zend_Translate_Adapter object is known in service locator with the key \"Translator\", the Zend_View_Helper_Translate will get the translator injected. No need for putting Zend_Translate in Zend_Registry.\n- When a Zend_Navigation or Zend_Navigation_Container object is known in service locator with the key \"Navigation\", a custom HumusMvc\\View\\Helper\\Navigation is used. This special view helper will check the service locator for the navigation object, additionally, if additional Zend_Acl is available with key \"Acl\" and Zend_Acl_Role_Interface is available with key \"AclRole\", both get injected in navigation view helper, too. Same for translator under key \"Translator\". If nothing is known in service locator, the default Zend_View_Helper_Navigation will be used.\n- can be configured with module manager: module config key \"view_helpers\", interface for module class \"Zend\\ModuleManager\\Feature\\ViewHelperProviderInterface\" and method in module class \"getViewHelperConfig\"\n\n\nView Configuration\n------------------\n\nSample view configuration in module.config.php\n\n    return array(\n        'view' =\u003e array(\n            'classname' =\u003e 'HumusMvc\\View',\n            'useViewRenderer' =\u003e true,\n            'useStreamWrapper' =\u003e false,\n            'doctype' =\u003e 'XHTML1'\n        )\n    );\n\nclassname (optional): The view class to use. Must be an instance of HumusMvc\\View\nuseViewRenderer, doctype, contentType, assign, etc. are default config keys for Zend_View\n\nA special plugin loader (HumusMvc\\View\\HelperPluginManager) will get injected into the view object.\n\nFront Controller Configuration\n------------------------------\n\nSample front controller configuration in module.config.php:\n\n    return array(\n        'front_controller' =\u003e array(\n            'controller_directory' =\u003e array(\n                'test' =\u003e __DIR__ . '/../src/test/controllers' // key = name of module, value = path to controllers in this module\n            ),\n            'module_controller_directory_name'=\u003e 'controllers',\n            'base_url' =\u003e '/',\n            'params' =\u003e array(\n                'displayExceptions' =\u003e false, // true for development\n                'disableOutputBuffering' =\u003e true\n            ),\n            'plugins' =\u003e array(\n                'actionStack' =\u003e 'Zend_Controller_Plugin_ActionStack',\n                'putHandler' =\u003e array(\n                    'class' =\u003e 'Zend_Controller_Plugin_PutHandler',\n                    'stack_index' =\u003e 10\n                ),\n            ),\n            'throw_exceptions' =\u003e false,\n            'return_response' =\u003e false,\n            'default_module' =\u003e 'default',\n            'default_action' =\u003e 'index',\n            'default_controller_name' =\u003e 'index',\n        )\n    );\n\ncontroller_directory: Key = \"ModuleName\", Value = \"Path to controllers in that module\"\nplugins: Key = \"PluginName\", Value = \"PluginClass\" or array (class and stack_index) - if a plugin is registred in service locator, the plugin will be loaded from service locator, otherwise it will simply be instantiated with \"new\".\nbase_url, params, module_controller_directory_name, etc. are default config keys for the front controller\n\nA special plugin loader (HumusMvc\\Controller\\Action\\HelperPluginManager) will get injected into the action controller object.\n\nAction helpers can be configures by module manager: module config key \"action_helpers\", interface for module class \"HumusMvc\\ModuleManager\\Feature\\ActionHelperProviderInterface\" and method in module class \"getActionHelperConfig\"\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fprolic%2Fhumusmvc","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fprolic%2Fhumusmvc","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fprolic%2Fhumusmvc/lists"}