craftcms/plugin-installer
Automate installing and managing Craft CMS plugins via Composer. Simplifies adding plugins to projects, handling dependencies, and keeping installs consistent across environments—ideal for CI/CD workflows and teams that want repeatable, scriptable plugin setup.
post-install-cmd), making adoption straightforward.craft install-plugin), so this package extends rather than replaces existing functionality.craft install-plugin method."extra": {
"installer-paths": {
"plugins/*": ["type:craft-plugin"]
}
}
craft install-plugin with composer require vendor/plugin.post-update-cmd).composer.json updates to declare type:craft-plugin.vendor/ directory.composer require vendor/plugin (or composer update for updates).craft CLI or admin panel.vendor/ and restore from backup if issues arise.composer remove vendor/plugin for clean uninstallation.craftcms/plugin-installer) for bug fixes.composer.lock to avoid unexpected updates.composer why-not vendor/plugin or manual dependency overrides.--verbose flag) or Craft error logs.composer --version).composer.json validity.composer why vendor/plugin to diagnose dependency conflicts.composer.json schema for Craft plugins.--prefer-dist to avoid runtime downloads.vendor/ in production.composer.json for excessive transitive dependencies.composer.json for reproducibility.composer.lock: Ensures consistency across dev/staging/prod.repositories in composer.json.| Failure Scenario | Impact | Mitigation |
|---|---|---|
| Composer version mismatch | Installation fails | Enforce Composer 2.x via .composer-version. |
| Plugin dependency conflicts | Broken plugin or Craft core | Use composer why to diagnose; manual overrides. |
Corrupted vendor/ directory |
Silent failures or missing plugins | Regular backups; composer install --prefer-dist. |
| Network issues (Packagist downtime) | Installation hangs | Use --prefer-source or local mirrors. |
| Plugin post-install hooks fail | Partial functionality | Log hooks; implement retry logic. |
| Craft CMS update breaks plugins | Plugin incompatibility | Test plugins against Craft beta releases. |
composer.json structure for Craft plugins (e.g., type:craft-plugin, craft-version constraints).composer require/update vs. craft install-plugin.craftcms/plugin-installer via Composer.composer.json with installer-paths.How can I help you explore Laravel packages today?