{"id":13747973,"url":"https://zendframework.github.io/zend-component-installer/","last_synced_at":"2025-05-09T10:32:12.548Z","repository":{"id":57089841,"uuid":"48181735","full_name":"zendframework/zend-component-installer","owner":"zendframework","description":"Composer post-package-(un)install scripts for modules and components.","archived":true,"fork":false,"pushed_at":"2020-01-28T20:19:55.000Z","size":2182,"stargazers_count":45,"open_issues_count":4,"forks_count":20,"subscribers_count":20,"default_branch":"master","last_synced_at":"2025-03-13T03:28:14.143Z","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":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/zendframework.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"docs/CONTRIBUTING.md","funding":null,"license":"LICENSE.md","code_of_conduct":"docs/CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-12-17T15:18:15.000Z","updated_at":"2024-12-16T08:15:08.000Z","dependencies_parsed_at":"2022-08-20T16:50:06.440Z","dependency_job_id":null,"html_url":"https://github.com/zendframework/zend-component-installer","commit_stats":null,"previous_names":[],"tags_count":17,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zendframework%2Fzend-component-installer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zendframework%2Fzend-component-installer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zendframework%2Fzend-component-installer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zendframework%2Fzend-component-installer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/zendframework","download_url":"https://codeload.github.com/zendframework/zend-component-installer/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253234178,"owners_count":21875561,"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-08-03T07:00:31.416Z","updated_at":"2025-05-09T10:32:12.259Z","avatar_url":"https://github.com/zendframework.png","language":"PHP","funding_links":[],"categories":["General Presentation"],"sub_categories":[],"readme":"# Component Installer for Zend Framework 3 and Expressive Applications\n[![Build Status](https://secure.travis-ci.org/zendframework/zend-component-installer.svg?branch=master)](https://secure.travis-ci.org/zendframework/zend-component-installer)\n[![Coverage Status](https://coveralls.io/repos/github/zendframework/zend-component-installer/badge.svg?branch=master)](https://coveralls.io/github/zendframework/zend-component-installer?branch=master)\n\n\u003e ## Repository abandoned 2019-12-31\n\u003e\n\u003e This repository has moved to [laminas/laminas-component-installer](https://github.com/laminas/laminas-component-installer).\n\nThis repository contains the Composer plugin class `Zend\\ComponentInstaller\\ComponentInstaller`,\nwhich provides Composer event hooks for the events:\n\n- post-package-install\n- post-package-uninstall\n\n## Via Composer global install\n\nTo install the utility for use with all projects you use:\n\n```bash\n$ composer global require zendframework/zend-component-installer\n```\n\n## Per project installation\n\nTo install the utility for use with a specific project already managed by\ncomposer:\n\n```bash\n$ composer require zendframework/zend-component-installer\n```\n\n## Writing packages that utilize the installer\n\nPackages can opt-in to the workflow from zend-component-installer by defining\none or more of the following keys under the `extra.zf` configuration in their\n`composer.json` file:\n\n```json\n\"extra\": {\n  \"zf\": {\n    \"component\": \"Component\\\\Namespace\",\n    \"config-provider\": \"Classname\\\\For\\\\ConfigProvider\",\n    \"module\": \"Module\\\\Namespace\"\n  }\n}\n```\n\n- A **component** is for use specifically with zend-mvc + zend-modulemanager;\n  a `Module` class **must** be present in the namespace associated with it.\n  The setting indicates a low-level component that should be injected to the top\n  of the modules list of one of:\n  - `config/application.config.php`\n  - `config/modules.config.php`\n  - `config/development.config.php`\n\n- A **module** is for use specifically with zend-mvc + zend-modulemanager;\n  a `Module` class **must** be present in the namespace associated with it.\n  The setting indicates a userland or third-party module that should be injected\n  to the bottom of the modules list of one of:\n  - `config/application.config.php`\n  - `config/modules.config.php`\n  - `config/development.config.php`\n\n- A **config-provider** is for use with applications that utilize\n  [expressive-config-manager](https://github.com/mtymek/expressive-config-manager)\n  or [zend-config-aggregator](https://github.com/zendframework/zend-config-aggregator)\n  (which may or may not be Expressive applications). The class listed must be an\n  invokable that returns an array of configuration, and will be injected at the\n  top of:\n  - `config/config.php`\n\n## Whitelisting packages to install automatically\n\nAt the project level, you can mark packages that expose configuration providers\nand modules that you want to automatically inject via the `component-whitelist`\nkey:\n\n```json\n\"extra\": {\n  \"zf\": {\n    \"component-whitelist\": [\n      \"zendframework/zend-expressive\",\n      \"zendframework/zend-expressive-helpers\"\n    ]\n  }\n}\n```\n\nThis configuration must be made at the root package level (the package\n_consuming_ configuration providing packages).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/zendframework.github.io%2Fzend-component-installer%2F","html_url":"https://awesome.ecosyste.ms/projects/zendframework.github.io%2Fzend-component-installer%2F","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/zendframework.github.io%2Fzend-component-installer%2F/lists"}