jakoch / Awesome Composer
Licence: cc0-1.0
😎 A curated awesome list for Composer, Packagist, Satis, Plugins, Scripts, Composer related resources, tutorials.
Stars: ✭ 738
Projects that are alternatives of or similar to Awesome Composer
composer-diff
Compares composer.lock changes and generates Markdown report so you can use it in PR description.
Stars: ✭ 51 (-93.09%)
Mutual labels: packagist, composer, composer-plugin
Composer Custom Directory Installer
A composer plugin, to install differenty types of composer packages in custom directories outside the default composer default installation path which is in the vendor folder.
Stars: ✭ 117 (-84.15%)
Mutual labels: composer, composer-plugin, composer-packages
Acf Pro Installer
A composer install helper for Advanced Custom Fields PRO
Stars: ✭ 265 (-64.09%)
Mutual labels: composer, packagist, composer-plugin
Ansible Role Composer
Ansible Role - Composer PHP Dependency Manager
Stars: ✭ 149 (-79.81%)
Mutual labels: composer, dependency-manager, packagist
Composer Patches
Applies a patch from a local or remote file to any package that is part of a given composer project. Patches can be defined both on project and on package level. Optional support for patch versioning, sequencing, custom patch applier configuration and composer command for testing/troubleshooting patches.
Stars: ✭ 196 (-73.44%)
Mutual labels: composer, composer-plugin, composer-packages
Private Composer Installer
Composer install helper outsourcing sensitive keys from the package URL into environment variables
Stars: ✭ 168 (-77.24%)
Mutual labels: composer, packagist, composer-plugin
Foxy
A fast, reliable, and secure NPM/Yarn bridge for Composer
Stars: ✭ 137 (-81.44%)
Mutual labels: composer, dependency-manager, composer-plugin
composer-localdev-plugin
Composer Plugin for local development
Stars: ✭ 31 (-95.8%)
Mutual labels: packagist, composer, composer-plugin
composer-velocita
Velocita - Composer plugin for transparent caching
Stars: ✭ 26 (-96.48%)
Mutual labels: packagist, composer, composer-plugin
video-downloader
Video Downloader for Facebook.
Stars: ✭ 63 (-91.46%)
Mutual labels: composer, composer-packages
The-PHP-Workshop
A New, Interactive Approach to Learning PHP
Stars: ✭ 30 (-95.93%)
Mutual labels: packagist, composer
client-php
Official NFe.io API Client for PHP
Stars: ✭ 36 (-95.12%)
Mutual labels: packagist, composer
composer-inheritance-plugin
Opinionated version of Wikimedia composer-merge-plugin to work in pair with Bamarni composer-bin-plugin.
Stars: ✭ 20 (-97.29%)
Mutual labels: composer, composer-plugin
crook
Simple hook management tool made with PHP
Stars: ✭ 60 (-91.87%)
Mutual labels: packagist, composer
alfred-packagist
Alfred workflow to search for PHP packages with Packagist
Stars: ✭ 21 (-97.15%)
Mutual labels: packagist, composer
Jwt Auth Guard
JWT Auth Guard for Laravel and Lumen Frameworks.
Stars: ✭ 319 (-56.78%)
Mutual labels: composer, composer-packages
Laravel Server Monitor
Server Monitoring Command for Laravel Applications
Stars: ✭ 424 (-42.55%)
Mutual labels: composer, composer-packages
wp-translation-downloader
Composer plugin to download WordPress translations
Stars: ✭ 35 (-95.26%)
Mutual labels: composer, composer-plugin
Repman
Repman - PHP Repository Manager: packagist proxy and host for private packages
Stars: ✭ 277 (-62.47%)
Mutual labels: composer, packagist
Performance
⏱ PHP performance tool analyser your script on time, memory usage and db query. Support Laravel and Composer for web, web console and command line interfaces.
Stars: ✭ 429 (-41.87%)
Mutual labels: composer, packagist
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
- Official Website
- Github
- Issues
- Source
- Documentation
- Getting Started Guide and Installation Instructions
- Find Packages on Packagist
-
CheatSheet - Overview of CLI commands and
composer.json
schema. - Composer Installers - Composer installers for multiple frameworks.
Support
Stack Overflow
- You might use the following tags:
composer-php
,packagist
,satis
+php
. - Ask a new question
- Find questions tagged
composer-php
IRC
- IRC channels are on
irc.freenode.org
: #composer for users and #composer-dev for development.
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. - 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 use 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 - 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.
- 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 NodeJS and npm.
- Node-Composer - Installer for NodeJS, 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 Exclusive Install - Prevents more than one install or update operation at a time.
-
Composer-Downloads-Plugin - Lightweight mechanism to download external resources (ZIP/TAR files) with only a
url
andpath
. - 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.
Tools
- 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
tocomposer.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.
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
- A beginners guide to Composer
- A short & simple Composer tutorial
- Easy package management with Composer
- PHP Dependency Management with Composer
- Composer Primer
- PHP Composer Magento Tutorial by Alan Storm
- Creating and Using Composer Packages
Blogs
- Jordi Boggiano (seldaek)
- Nils Adermann (naderman)
- Composer: Part 1 - What & Why
- Composer: Part 2 - Impact
- Composer Stability Flags
- Composer Versioning
Videos
- Composer Best Practices 2018 - Nils Adermann @ phpday 2018
- Managing dependencies is more than running "composer update" - Nils Adermann @ phpsrb17
- Composer Best Practices — Jordi Boggiano @ php[tek] 2015
- Wonderful World of Composer
- PHP Composer Quickstart
- How Composer helped shape the new way of writing PHP - Nils Adermann @ Drupal Camp Frankfurt
- Composer Package Management - Nils Adermann @ T3CON12DE
Slides
- Slides by Nils Adermann
- Source: https://naderman.de/slippy/src/
- PHP Reinvented - How Composer helped shape the new way of writing PHP
- Composer Update
- Dependency Management with Composer PHP Reinvented
- Managing dependencies is more than running "composer update"
- Composer Best Practices @ T3DD17
- Gain Control over your Dependencies with Private Packagist
- Composer.lock demystified
- Compoer In-Depth @ Contao Konferenz 2018
- Composer Best Practices 2018
- Developing and Deploying Magento with Composer Best Practices
- Composer Platform Config (check-platform-reqs) @ SymfonCon 2018
- Slides by Jordi Boggiano
Packagist
Packagist is the PHP Package Repository.
Setup a Packagist Mirror
- Packagist Mirror - This script helps to setup a packagist mirror. It is the maintained and stable version of Packagist Crawler.
- Docker Image - This Docker image helps to create a customized packagist mirror.
- Packagist Mirror from Indonesia - Another implementation for creating a packagist mirror.
Packagist Mirrors
About metadata mirrors: https://packagist.org/mirrors
- North America
- Canada - packagist.org Main mirror
- South America
- Brazil - packagist.com.br
- Africa
- South Africa - packagist.co.za
- Asia
- China - php.cnpkg.org, https://pkg.phpcomposer.com/, https://mirrors.aliyun.com/composer/
- India - https://packagist.in/
- Indonesia - packagist.phpindonesia.id
- Japan - packagist.jp
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
- Private Packagist Cloud - A Composer Repository as a Service for private packages and to mirror packages from other repositories.
- Private Packagist Enterprise - On-premise self-hosted version of Private Packagist.
- Private Packagist API Client - A PHP client for the Private Packagist API. The client handles authentication, signature generation and access to all endpoints.
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.
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.
License
To the extent possible under law, Jens A. Koch has waived all copyright and related or neighboring rights to this work.
Note that the project description data, including the texts, logos, images, and/or trademarks,
for each open source project belongs to its rightful owner.
If you wish to add or remove any projects, please contact us at [email protected].