PHP remains the most popular server-side programming language powering the world wide web and in use by 82% of websites. Metrics focused on server-side languages show that PHP usage has increased by 1% in the past year alone.
Much of the growth in the last few years was driven by recently developed tools and frameworks, especially Composer. Composer is a dependency management tool, similar to Node’s npm, that manages per-project dependencies and package versions for PHP projects. It uses Packagist as its main package repository, which has shown impressive growth in the last year, doubling the number of tracked packages. This past October, the number of installations, themselves, reached the 45 million mark.
As such, Mikeal and Erika from the DigitalOcean Evangelism team, were curious to find the top 10 Packagist contributors based on the 50 most required packages and their authors. We used this script to collect our data.
Why the most required packages? Open source project authors rely on libraries that are well-maintained and stable. These provide a solid structure on which to build a successful project. If hundreds or thousands of projects are relying on a specific package, this will also mean more people able to contribute and quickly fix any bugs that might show up in the underlying required library.
Thus, we’d like to give a huge thank you to the authors who took their time to create and share awesome projects with the open source community!
Fabien Potencier leads the ranking with 22 packages being referenced (required) by a total of 16412 other packages. Most part of these packages are components of the Symfony Framework, created by Fabien, which are also widely used together or isolated in other projects. His most required package is symfony/framework-bundle with 2626 packages depending on it. This package is a requirement for Symfony bundles, which basically extends the main framework’s functionality.
Sebastian Bergman is the author of phpunit/phpunit, the most referenced package on Packagist. PHPUnit is a popular unit testing framework for PHP, used as a development requirement by 9181 other projects of all sizes and types on Packagist.
Taylor Otwell is the creator of the Laravel Framework. His package illuminate/support is the second most required on Packagist, with 3608 projects depending on it. This library offers a series of helpers for dealing with databases, arrays, and collections. It is a component of the Laravel Framework but can also be used as a standalone library.
Benjamin Eberlei is the lead of the Doctrine project, a collection of several PHP libraries focused on database abstraction and object mapping. The package doctrine/orm is the most required, with 1421 other packages depending on it. Those include frameworks, CMSs, and various database-related libraries.
Jordi Boggiano is the co-author of Composer, the project that inspired this article and stands as one of the most relevant milestones in modern PHP. Jordi is one of the authors of composer/installers, and he also created monolog/monolog. The former is commonly required by frameworks and CMSs to bring composer features into those projects, and the latter is a very popular logging library for PHP.
Pádraic Brady is the author of mockery/mockery, a mock object framework for unit testing in PHP. As with PHPUnit, this is usually a development requirement for creating and running the project test suite. It’s required by 1660 other packages on Packagist.
Zend is a popular framework for PHP. The Zend Framework development team has two packages in the TOP 50, the most required one being zendframework/zendframework with 1123 packages depending on it. Between the dependant packages are components of the main framework, as well as many extensions created by users.
8) Kitamura Satoshi – 1 package, 1371 total references
Kitamura Satoshi is the author of satooshi/php-coveralls, a PHP client library for Coveralls – an application that basically provides test coverage stats for continuous integration environments.This library is required by 1371 other projects on Packagist as it is a popular asset for continuous integration within PHP projects.
Michael Dowling is the creator of Guzzle, a HTTP client library and framework for PHP. This library is very popular with projects that make use of remote APIs. His package guzzle/guzzle is required by other 811 projects on Packagist, and many of those are wrapper libraries created to facilitate the use of various APIs.
Greg Sherwood is the author of squizlabs/php_codesniffer, a library for detecting violations according to a defined code standard. His package is required by 1264 other projects on Packagist.