Awesome
Composer


A curated list of resources for Composer, Packagist, Satis, Plugins,
Scripts, Videos, Tutorials.
You might also like awesome-php.
Please read the contribution
guidelines before contributing.
Composer
Support
Stack Overflow
IRC
Plugins
- Documentation for
Plugins - This offical documentation is good starting point, when
writing a Composer plugin.
- Composer-Asset-Plugin
- A npm/Bower Dependencies Manager for Composer.
- Composer-AWS
- The plugin loads repository data and downloads packages from Amazon S3
(with authentication support for private repositories).
- Composer-Composition -
Provides an API, for checking your environment at runtime.
- Composer-Suggest
- Enables you to install a custom group of suggested packages, based on
keyword patterns.
- Composer-Versions-Check
- Shows outdated packages from last major versions after using the
update command (showing “Latest is vX.Y.Z”).
- Composer-Changelogs
- Provides a summary of the updates with links to
changelog/releasenote/tag. The output is ready to be pasted into the
commit message when updating the composer.lock file.
- Composer-Merge-Plugin
- Merges multiple
composer.json files at Composer
runtime.
- Composer-Bin-Plugin
- Adds support for managing dependencies for multiple packages in a
single repository or isolate bin dependencies.
- Composer-Inheritance-Plugin
- Opinionated version of Wikimedia composer-merge-plugin to work in pair
with Bamarni composer-bin-plugin.
- Composer-MonoRepo-Plugin
- The plugin helps to manage dependencies for multiple packages in a
single repository.
- Composer-Patches-Plugin
- Enables you to provide patches for any package from any package. When
the dependency is fetched, the patch is applied on top.
- Composer-Patches
- The plugin applies a patch from a local or remote file to any required
package.
- Composer-Patches -
Applies a patch from a local or remote file to any package that is part
of a given composer project.
- Composer-Patchset
- Automatically fetch, update and apply patches to any composer package
with a twist - store the patchset as a composer package itself.
- Composer-Plugin-QA
- Comprehensive Plugin for composer to execute PHP Quality assurance
Tools.
- Composer-Cleanup-Plugin
- Removes tests & documentation folders from the vendor dir.
- Composer-Cleaner - The
tool removes unnecessary files and directories from the vendor
directory.
- Composer-Ignore-Plugin
- Enables you to remove files and folders from the vendor folder (to
make a cleaner and smaller deployment to production). It’s an
alternative to
.gitattributes.
- Composer-Vendor-Cleaner
- Plugin removes unnecessary development files and directories from
vendor directory by glob pattern syntax.
- Composer-Skrub - The
plugin helps to remove junk from Composer installations and trim build
sizes.
- Drupal
Vendor Hardening Composer Plugin - Removes extraneous directories
from the project’s vendor directory & adds .htaccess and web.config
files to the root of the project’s vendor directory.
- Composer-Shared-Package-Plugin
- Allows you to share selected packages between your projects by
creating symlinks.
- Composer-Symlinker
- Enables you to load packages from different directories (instead of
loading them from /vendor).
- Prestissimo - A
parallel downloader using
phpext_curl.
- Composer-Curl-Plugin
- The plugin uses
phpext_curl for downloading
packages.
- Composer-Custom-Directory-Installer
- A composer plugin, to install different types of composer packages in
custom directories outside the default composer installation path
(vendor folder).
- Composer-Dependency-Analyzer
- The plugin helps to find dependency issues, including dead, unused,
shadow and misplaced dependencies.
- Composer-Dependency-Analyzer
- Allows you to build a dependency graph for an installed composer
project.
- Graph-Composer
- Provides a graph visualization for your project’s
composer.json and its dependencies.
- PackageVersions -
Provides a very quick and easy access to installed composer dependency
versions.
- PackageVersions
Deprecated - Is a fork of Ocramius/PackageVersions providing
compatibility with Composer 1 and 2 on PHP 7+.
- Composer-Locator
- Provides a means of locating the installation path for a given
Composer package name.
- PackageInfo
- Enables you to retrieve all package informations (like version, tag,
release date, description).
- Composer-Git-Hooks
- A library for easily managing git hooks in your composer config.
- Symfony-Flex -
Provides recipe-based
installation and configuration management for Symfony packages.
- Narrowspark-Automatic
- Automates the most common tasks of applications, boost package
downloads, adds a composer security audit and more.
- PHPCodeSniffer-Composer-Installer
- The plugin enables you to install PHP_CodeSniffer
coding standards (rulesets).
- Composer-Warmup -
The plugin adds the command
warmup-opcode to Composer,
which triggers the compilation of all PHP files discovered in your
project into the Opcache.
- Foxy - Composer plugin
that executes npm/yarn packages installation operations, when composer
package is installed or updated.
- NodeJS-Installer
- Installer for Node.js and npm.
- Node-Composer
- Installer for Node.js, npm and yarn.
- Imposter-Plugin
- Wrapping all composer vendor packages inside your own namespace.
Intended for WordPress plugins.
- Composer
Preload - The plugin generates a
vendor/preload.php
file to warm up the Opcache.
- PHP Inc -
Automatically includes files for autoload and autoload-dev to facilitate
using functions and grouped definitions within composer loaded
applications.
- Composer
Registry Manager - Enables you to switch between different composer
repositories.
- Production-Dependencies-Guard
- Prevents development packages from being added into require and
getting into production environment.
- Composer-Plugin-Exclude-Files
- A plugin for excluding files required by packages using the ‘files’
autoloading mechanism.
- Composer-Downloads-Plugin
- Lightweight mechanism to download external resources (ZIP/TAR files)
with only a
url and path.
- Private-Composer-Installer
- Install helper outsourcing sensitive keys from the package URL into
environment variables.
- CycloneDX-PHP-Composer
- Creates a CycloneDX “Software
Bill-of-Materials” (SBOM) for the dependencies of a project. The SBOM
enables dependency monitoring and risk analysis by OWASP DependencyTrack.
- Composer-Compile-Plugin
- Allow PHP libraries to define simple, freeform compilation tasks.
Support post-install hooks in any package.
- Composer-Link -
Adds the ability to link local packages for development.
- Composer-REPL
- The plugin provides the
composer repl command, which
gives you a PHP language shell (read-eval-print loop).
- Composer-Diff -
Compares
composer.lock changes and generates a Markdown
report for usage in a pull request description.
- Composer-Velocita
- Fast and reliable Composer package downloads using Velocita: a
caching reverse proxy that does not require you to modify your
projects.
- Composer
Translation Validator - Validates translation files in your project,
supports several file formats (regarding different frameworks) and
provides useful validators for comparison, consistency and syntax
checks.
- Composer SemVer
Checker - Enables you identify constraint to version resolution
issues, by doing a semantic version check for Packagist hosted
packages.
- Composer-Yaml -
This tool converts
composer.yml to
composer.json.
- Studio - A
workbench for developing Composer packages. Its an alternative to
editing dependencies in the vendor folder or using PathRepositories
to load a local clone of your dependency into your project.
- OctoLinker
Browser Extension - Enables you to navigate Composer/NPM
dependencies on GitHub.
- ComposerRequireChecker
- A CLI tool to analyze dependencies and verify that no unknown imported
symbols are used in the sources of a package.
- Composer-Unused
- A CLI tool, which scans your code and shows unused Composer
dependencies.
- Composer-Normalize
- The plugin helps to keep your
composer.json file(s)
consistent by restructuring and sorting entries (normalizing).
- Composer-Service
- Enables you to run Composer as a service on a remote server.
- Composer
PreferLowest Checker - Strictly compare the specified minimum
versions of your composer.json with the ones actually used by the
prefer-lowest composer update command option.
- Bramus/Composer-Autocomplete
- A Bash/Shell autocompletion script for Composer.
- Composer/Xdebug-Handler
- Helps you to restart a CLI process without loading the xdebug
extension.
- Composer Semver
Range Checker - A tool to help check the satisfiable ranges of a
composer constraint.
Scripts
- ParameterHandler
- Allows you to manage your ignored parameters when running a composer
install or update.
- Tooly -
Manage needed PHAR files in your project
composer.json.
Every PHAR file will be saved in the composer binary directory. Optional
with GPG verification for every PHAR.
- Melody - One-file
composer scripts.
- Composer-Travis-Lint
- Allows you to lint the Travis CI configuration file
(
.travis.yml).
- Composer-Multitest
- Enables you to run a Composer script against multiple, locally
installed PHP versions, which are managed by PHPBrew or phpenv.
- ScriptsDev -
Enables you to use a
scripts-dev section, which triggers
scripts only in dev mode.
- PhantomJS-Installer
- A Composer Package which installs the PhantomJS binary (Linux,
Windows, Mac) into /bin of your project.
- Composer-Vendor-Cleanup
- A script which removes whitelisted unnecessary files (like tests/docs
etc.) from the vendor directory.
- Composer-Substitution-Plugin
- A Composer plugin replacing placeholders in the
scripts
section by dynamic values.
Services
- Dependabot -
Dependabot is a dependency update service. It monitors and updates your
dependencies by sending a pull-request. The service is free for public
repos and personal account repos.
Tutorials
Blogs
Videos
Slides
- Slides by Nils Adermann
- Slides by Jordi Boggiano
Packagist
Packagist is the PHP Package
Repository.
Setup a Packagist Mirror
Packagist Mirrors
About metadata mirrors: https://packagist.org/mirrors
Composer Repositories
Registry Manager
- https://github.com/slince/composer-registry-manager - The plugin
helps you to switch between different composer repositories.
Private repositories
- fxpio/tug - Enables you
to host a private Composer registry on AWS Serverless serving your
private PHP packages, which are hosted on GitHub or GitLab
services.
Private Packagist
Repman
- repman.io & repman-io/repman - A
Private PHP Package Repository Manager & Packagist Proxy.
- repman-io/composer-plugin
- This plugin enables downloading via Repman by adding a distribution
mirror URL for all your dependencies (without need to update the
composer.lock file).
Packagist-compatible
repositories
- WordPress Packagist - Mirrors
the WordPress plugin and theme directories as a Composer
repository.
- Asset Packagist - Enables
installation of Bower and NPM packages as native Composer packages.
- Firegento - A Composer
Repository providing Magento Modules.
- Drupal Packagist -
Composer repositories for Drupal 7 and 8 core, modules, and themes.
- Satis
Server - This docker container provides a Satis Server and enables
you to run a private, self-hosted Composer repository with support for
Git, Mercurial, and Subversion, HTTP API, HTTPs support, webhook handler
and scheduled builds.
- Cloudsmith - A fully managed
package management SaaS with PHP/Composer support (and many
others).
- Release Belt -
Self–hosted Composer repository implementation to quickly integrate ZIP
files of third party non–Composer releases.
- Packeton - Private
self-hosted Composer repository for vendors. Fork of packagist with
adding support for authorization, customer users, groups, webhooks.
- RepoFlow - Simple and fast
platform for hosting private Composer registries. Also supports Docker,
npm, PyPI, Maven, and RubyGems. Offers free options for both cloud and
self-hosted setups.
Satis
- GitLab-Composer
- This is a branch/tag indexer for GitLab repositories.
- Satisfy -
Satis composer repository manager with a Web UI.
- Satis
Control Panel - A simple web UI for managing your Satis Repository
with optional CI integration.
- Satis Go - A web
server for managing Satis configuration and hosting the generated
Composer repository.
Toran Proxy
- ToranProxy (deprecated) - In
addition to providing a composer repository ToranProxy acts as a proxy
server for Packagist and GitHub.
Copyright

To the extent possible under law, Jens A. Koch has waived all
copyright and related or neighboring rights to this work.
composer.md
Github