klitsche/dog
Dog is a lightweight source code documentation generator for PHP libraries. Built on phpDocumentor/reflection and Twig, it analyzes code and phpdoc, validates documentation with configurable rules, and outputs Markdown suitable for MkDocs and similar tools.
phpdocumentor/reflection and Twig, which are widely used in Laravel ecosystems. It integrates seamlessly with Laravel’s dependency injection, configuration, and command-line tooling.@route).composer require --dev and a .dog.yml config file. No core Laravel modifications needed.--analyze vs. --generate), enabling parallel execution in CI pipelines.@middleware, @route).composer.json.phpdocumentor/reflection (v3.x) and Twig (v2.x). Potential conflicts with Laravel’s bundled versions (e.g., phpdocumentor/phpdocumentor). Mitigation: Use composer.lock and test in a staging environment.storage/).app/Providers/ or database/ from srcPaths.error issues) or treated as suggestions?PublicFileDocBlockMissingRule for legacy code.resources/docs/ (for internal tools)./docs route (e.g., using mkdocs-material).@middleware, @inject) that should be supported?Route::get() annotations)?vendor/bin/dog as a custom Artisan command (e.g., php artisan dog:generate).DogServiceProvider to bind config and commands.mkdocs.yml.dog --analyze on PRs.mkdocs or Laravel’s Blade for web integration.app/Http/Controllers/)..dog.yml with minimal rules (e.g., only error-level issues).srcPaths (e.g., app/Services/, app/Exceptions/).docs.example.com).phpdocumentor/reflection compatibility).phpdocumentor/reflection: May conflict with Laravel’s phpdocumentor (if used). Solution: Use composer why-not to resolve.Twig: Laravel’s twig package is separate; no conflicts expected.composer require --dev klitsche/dog..dog.yml with minimal config (e.g., srcPaths, outputDir).phploc for metrics).vendor/bin/dog --analyze.@return tags).dog --analyze on PRs.error-level issues..dog.yml may diverge across environments.config/dog.php (Laravel-style) and sync via deployment.outputDir may accumulate stale files.php artisan dog:purge command to clear old docs..dog.yml in CONTRIBUTING.md and provide templates.debug: true in .dog.yml and check logs.storage/dog-cache/).php-parallel-lint or Github Actions matrix.How can I help you explore Laravel packages today?