O Composer é um sistema de gerenciamento de dependências para projetos de programação PHP. Ele fornece formatos padronizados para o gerenciamento de bibliotecas PHP. O Composer foi desenvolvido por Jordi Boggiano e Nils Adermann em 2012, que ainda lideram o projeto. O Composer é instalado diretamente no servidor via console ou linha de comando, permitindo ao usuário instalar aplicações PHP que estejam disponíveis em suas dependências. O repositório do Composer contém os pacotes disponíveis, onde você pode baixar e manter atualizados os pacotes de software nos quais seu projeto se baseia. Hoje, ele é amplamente utilizado por empresas nacionais e internacionais para gerenciamento de bibliotecas, como é o caso do Webpay Plus da Transbank, cuja versão mais recente da API REST é baseada no Composer. O objetivo do Composer é facilitar o início de um projeto e permitir que você execute as tarefas necessárias mais rapidamente, instalando e mantendo bibliotecas.

Por que usar o Composer? O clássico ditado dos desenvolvedores é não reinventar a roda, e é verdade que hoje em dia a maioria dos sites contém bibliotecas comuns, como as de envio de e-mails, validação de formulários e até mesmo elementos de design como o Bootstrap. Mesmo trabalhando nativamente, o uso de APIs é vital no desenvolvimento de sistemas atualmente.

Portanto, ao usar uma biblioteca de terceiros, que por sua vez depende de outros pacotes ou downloads de bibliotecas, o Composer a pré-instala automaticamente, deixando para você apenas a tarefa de manutenção e atualização da biblioteca.

Comandos e Funcionalidades Básicas do Composer

A seguir, descrevemos os comandos básicos do Composer.
require: adiciona o parâmetro da biblioteca ao arquivo composer.json e a instala.

install: instala todas as bibliotecas em composer.json. Este é o comando usado para baixar todas as dependências do PHP do repositório.
update
: atualiza as bibliotecas em
composer.json
de acordo com as versões permitidas especificadas.
remove
: Desinstala uma biblioteca e a remove do
composer.json
.


A funcionalidade do Composer é basicamente gerenciada por meio de um arquivo chamado 
composer.json
, que é instalado na pasta raiz do seu projeto. Este arquivo possui uma estrutura JSON que permite gerenciar e visualizar as dependências utilizadas no seu projeto. Quando você instala um pacote, uma pasta chamada
/vendor/
é criada, contendo pastas com as bibliotecas e dependências básicas para o funcionamento do seu projeto web. Estou me limitando a uma descrição básica de como funciona, sem fornecer exemplos.