Bower é um gerenciador de pacotes (ou “gerenciador de dependências”, se preferir) para o front-end que conta com a qualidade Twitter. Sua proposta é ser um gerenciador de pacotes front-end rápido e descomplicado e prover uma melhor organização e gerenciamento dos recursos de front-end necessários para projetos web.
Aqui no desenvolvimento para web damos ênfase às melhores práticas para desenvolvimento web e, certamente, uma delas é a automatização de processos e tarefas repetitivos. Normalmente, o que se faz quando se precisa de uma biblioteca JavaScript, por exemplo, é ir até o site oficial e fazer o download e extrair o conteúdo necessário à estrutura do projeto em questão. E na hora de atualizar? Ir até o site novamente; fazer o download novamente; descompactar o pacote novamente; sobrescrever o(s) arquivo(s) em sua atual estrutura de projetos…
O Bower facilita e torna este processo mais rápido, já que automatiza todo o processo repetitivo e não estritamente relacionado ao desenvolvimento do projeto (“meta tarefa”). Por ser um gerenciador de pacotes, caso você queira usar algo que tenha dependência de outros pacotes (e.g. um plugin jQuery sempre precisa da própria jQuery), todas as dependências necessárias já serão baixadas automaticamente!
Instalando o Bower
Para trabalhar com o Bower, você precisa já ter Node e npm instalados e já em ponto de uso. Com isso, para instalar o Bower, basta rodar:
1 |
[sudo] npm install -g bower |
Também é bastante interessante que você já tenha o Git instalado, já que muitos dos pacotes fazem uso do Git para funcionar apropriadamente.
Usando o Bower
Uma das principais características do Bower é que ele consegue instalar não somente os pacotes (ou dependências) que foram oficialmente registrados (que podem ser consultados via linha de comando ou pelo Search Bower Packages), mas, também, realiza a instalação e faz o gerenciamento eficiente de:
- Um endpoint remoto Git, ex., https://github.com/tarciozemel/tweetlight (pode ser público ou privado);
- Um endpoint Git local, ex., um diretório com um repositório Git;
- Um endpoint abreviado, ex. tarciozemel/tweetlight (padrão para GitHub);
- Uma URL para um arquivo, incluindo arquivos zip and tar.gz (seu conteúdo é extraído).
Não faz muito sentido listar todos os comandos e opções do Bower aqui (é melhor ver a documentação no site oficial), mas saiba que através de comandos simples como install
, uninstall
, update
e outros, é possível fazer um gerenciamento de pacotes front-end de maneira muito simples e eficiente.
Screencast
Assista a este screencast sobre o Bower para mais informações e, quando terminar, não deixe de pesquisar mais a respeito dessa ferramenta, pois vale muito a pena!