{"id":25689825,"url":"https://github.com/deptrac/deptrac","last_synced_at":"2026-03-06T16:02:31.318Z","repository":{"id":37028768,"uuid":"45259338","full_name":"deptrac/deptrac","owner":"deptrac","description":"Keep your architecture clean.","archived":false,"fork":false,"pushed_at":"2026-01-29T18:31:08.000Z","size":25094,"stargazers_count":2880,"open_issues_count":30,"forks_count":149,"subscribers_count":41,"default_branch":"4.x","last_synced_at":"2026-01-30T06:49:13.868Z","etag":null,"topics":["architecture","clean-architecture","php"],"latest_commit_sha":null,"homepage":"http://deptrac.github.io/deptrac/","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/deptrac.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"docs/CONTRIBUTING.md","funding":null,"license":null,"code_of_conduct":"docs/CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"docs/SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2015-10-30T15:28:28.000Z","updated_at":"2026-01-30T02:03:56.000Z","dependencies_parsed_at":"2022-07-14T05:40:31.369Z","dependency_job_id":"6e571b7c-bb32-4b9d-9e2d-ef0ddd8a4664","html_url":"https://github.com/deptrac/deptrac","commit_stats":{"total_commits":1062,"total_committers":68,"mean_commits":"15.617647058823529","dds":0.7655367231638418,"last_synced_commit":"a6dbfaf4f20f0ae98b766954f35b8c164c3063ed"},"previous_names":["sensiolabs-de/deptrac","deptrac/deptrac"],"tags_count":60,"template":false,"template_full_name":null,"purl":"pkg:github/deptrac/deptrac","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/deptrac%2Fdeptrac","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/deptrac%2Fdeptrac/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/deptrac%2Fdeptrac/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/deptrac%2Fdeptrac/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/deptrac","download_url":"https://codeload.github.com/deptrac/deptrac/tar.gz/refs/heads/4.x","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/deptrac%2Fdeptrac/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30184876,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-06T14:42:24.748Z","status":"ssl_error","status_checked_at":"2026-03-06T14:42:14.925Z","response_time":250,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["architecture","clean-architecture","php"],"created_at":"2025-02-24T22:01:58.657Z","updated_at":"2026-03-06T16:02:31.312Z","avatar_url":"https://github.com/deptrac.png","language":"PHP","funding_links":[],"categories":["PHP","Table of Contents"],"sub_categories":["Static Analysis"],"readme":"# Deptrac\n\nDeptrac is a static code analysis tool for PHP that helps you communicate,\nvisualize and enforce architectural decisions in your projects. You can freely\ndefine your architectural layers over classes and which rules should apply to\nthem.\n\nFor example, you can use Deptrac to ensure that bundles/modules/extensions in\nyour project are truly independent of each other to make them easier to reuse.\n\nDeptrac can be used in a CI pipeline to make sure a pull request does not\nviolate any of the architectural rules you defined. With the optional Graphviz\nor Mermaidjs formatter you can visualize your layers, rules and violations.\n\n## Documentation\n\nYou can find the documentation in the /docs directory or visit the doc page:\nhttps://deptrac.github.io/deptrac\n\n## Getting Started\n\nYou can install Deptrac via Composer. We recommend using the\n[deptrac](https://github.com/deptrac/deptrac) package for this:\n\n```console\ncomposer require --dev deptrac/deptrac\n```\n\nOnce you have downloaded/installed deptrac, you will need to create a\n[configuration file](docs/index.md#configuration), where you define your layers and\ncommunication ruleset. This configuration file is written in YAML or php and, by default,\nis stored with the name `deptrac.yaml` in your project's root directory.\n\nDeptrac can generate a template for you, using the `init` command.\n\n```console\nvendor/bin/deptrac init\n```\n\nWhen you have this file, you can analyse your code by\nrunning the `analyse` command:\n\n```console\nvendor/bin/deptrac\n\n# which is equivalent to\nvendor/bin/deptrac analyse --config-file=deptrac.yaml\n```\n\nIn order to run Deptrac you need at least PHP 8.1.\n\nYou can analyse projects that require an older PHP version as long as\n[nikic/php-parser](https://github.com/nikic/PHP-Parser) can parse it.\n\n\n## How to Contribute\n\nSee the [contribution guide](docs/CONTRIBUTING.md).\n\n## Further Documentation\n\n* [Backwards Compatibility](docs/bc_policy.md) - General info on how we approach\n  backwards compatibility\n* [Upgrade Guide](docs/upgrade.md) - List of backwards breaking changes that\n  need to be addressed when upgrading Deptrac to a new version and how to do it.\n* [Core Concepts](docs/concepts.md) - Explains layers, rules and violations in\n  more details.\n* [Configuration](docs/configuration.md) - Reference for all available settings\n  in a depfile\n* [Collectors](docs/collectors.md) - Reference for which collectors are\n  available in Deptrac to define your layers.\n* [Formatters](docs/formatters.md) - Lists the different output formats\n  supported by Deptrac\n* [Debugging](docs/debugging.md) - Overview of the debug commands\n* [Code Of Conduct](docs/CODE_OF_CONDUCT.md) - Our community standards\n* [Contribute](docs/CONTRIBUTING.md) - Advice for contributing code changes,\n  e.g. how to run tests or how to build a phar file with your changes that you\n  can use to analyse your projects\n* [Security Guide](docs/SECURITY.md) - How to report security vulnerabilities\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdeptrac%2Fdeptrac","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdeptrac%2Fdeptrac","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdeptrac%2Fdeptrac/lists"}