Report this

What is the reason for this report?

What is Composer?

Published on March 25, 2021
Erika Heidi

By Erika Heidi

Developer Advocate

What is Composer?

Composer is an open source dependency management tool for PHP, created primarily to facilitate the distribution and maintenance of PHP packages as individual application components. It has dramatically changed the PHP ecosystem by creating the basis for modern PHP development, with component-based applications and frameworks.

Requirements are declared in a project-level JSON file, which Composer then uses to evaluate which package versions are the best match for the application dependencies. The evaluation will take into consideration nested dependencies and system requirements, if any.

Packagist, the public Composer repository, contains an expressive collection of open source PHP libraries that are made available for free through Composer. A premium version of the service offers hosting for private packages, making it possible to also use Composer on closed source projects.

To learn more about this subject, you can refer to our guides on how to install and use Composer within PHP environments.

Thanks for learning with the DigitalOcean Community. Check out our offerings for compute, storage, networking, and managed databases.

Learn more about our products

About the author

Erika Heidi
Erika Heidi
Author
Developer Advocate
See author profile

Dev/Ops passionate about open source, PHP, and Linux. Former Senior Technical Writer at DigitalOcean. Areas of expertise include LAMP Stack, Ubuntu, Debian 11, Linux, Ansible, and more.

Category:

Still looking for an answer?

Was this helpful?


This textbox defaults to using Markdown to format your answer.

You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!

Composer is not a package manager in the same sense as Yum or Apt are. Yes, it deals with “packages” or libraries, but it manages them on a per-project basis, installing them in a directory (e.g. vendor) inside your project. By default it will never install anything globally. Thus, it is a dependency manager.

Creative CommonsThis work is licensed under a Creative Commons Attribution-NonCommercial- ShareAlike 4.0 International License.
Join the Tech Talk
Success! Thank you! Please check your email for further details.

Please complete your information!

The developer cloud

Scale up as you grow — whether you're running one virtual machine or ten thousand.

Get started for free

Sign up and get $200 in credit for your first 60 days with DigitalOcean.*

*This promotional offer applies to new accounts only.