Deptrac é uma ferramenta de análise de código estático para PHP que ajuda você a comunicar, visualizar e aplicar decisões arquitetônicas em seus projetos. Você pode definir livremente suas camadas arquitetônicas sobre classes e quais regras devem ser aplicadas a elas.
Por exemplo, você pode usar o Deptrac para garantir que os pacotes/módulos/extensões em seu projeto sejam verdadeiramente independentes uns dos outros para torná-los mais fáceis de reutilizar.
O Deptrac pode ser usado em um pipeline de CI para garantir que uma solicitação pull não viole nenhuma das regras arquitetônicas definidas. Com o formatador opcional Graphviz ou Mermaidjs você pode visualizar suas camadas, regras e violações.
Você pode encontrar a documentação no diretório /docs ou visitar a página do documento: https://qossmic.github.io/deptrac
Você pode instalar o Deptrac via Composer. Recomendamos usar o pacote deptrac para isso:
composer require --dev qossmic/deptrac
Depois de baixar/instalar o deptrac, você precisará criar um arquivo de configuração, onde definirá suas camadas e conjunto de regras de comunicação. Este arquivo de configuração é escrito em YAML ou php e, por padrão, é armazenado com o nome deptrac.yaml
no diretório raiz do seu projeto.
O Deptrac pode gerar um modelo para você, usando o comando init
.
vendor/bin/deptrac init
Quando você tiver esse arquivo, poderá analisar seu código executando o comando analyse
:
vendor/bin/deptrac
# which is equivalent to
vendor/bin/deptrac analyse --config-file=deptrac.yaml
Para executar o Deptrac você precisa de pelo menos PHP 8.1.
Você pode analisar projetos que requerem uma versão mais antiga do PHP, desde que nikic/php-parser possa analisá-la.
Consulte o guia de contribuição ou acesse o repositório de desenvolvimento qossmic/deptrac-src.