ahmetbarut / laravel-attributes-documentor
There is no license information available for the latest version (v1.0.1) of this package.
v1.0.1
2022-11-14 06:19 UTC
Requires
- illuminate/support: ^8.73.2 || ^9.0.0
- symfony/finder: ^5.4.11 || ^6.0.1
Requires (Dev)
- orchestra/testbench: 6.* || 7.*
- pestphp/pest: ^1.22
This package is auto-updated.
Last update: 2025-03-14 11:36:23 UTC
README
It provides you the api for the document using the attributes.
Example
<?php namespace Tests; use AhmetBarut\Documentor\Attributes\Document; #[Document(description: 'TestClass')] class TestClass { #[Document(description: 'testProperty')] public $testProperty; #[Document(description: "testMethod")] public function testMethod() { return; } }
[ "class" => array:1 [ 0 => "TestClass" ] "methods" => array:1 [ "testMethod" => array:1 [ 0 => "testMethod" ] ] "properties" => array:1 [ "testProperty" => array:1 [ 0 => "testProperty" ] ] ]
Test
composer test
Installation
You can install the package via composer:
composer require ahmetbarut/laravel-attributes-documentor
Usage
use AhmetBarut\Documentor\FindAttributeDescription; $documentor = new FindAttributeDescription([ ...paths ]); $documentor->find(); $documentor // only class ->getClassAttributeDescription() // only methods ->getMethodsDescription() // only properties ->getPropertiesDescription() // filter null values ->filter()
Write To Markdown
use AhmetBarut\Documentor\FindAttributeDescription; use AhmetBarut\Documentor\Templates\Markdown; $documentor = new FindAttributeDescription([ ...paths ]); $documentor->find(); $data = $documentor->getClassAttributeDescription()->getMethodsDescription()->getPropertiesDescription()->filter(); $markdown = new Markdown(); // default path is docs $markdown->write($data);
Usage Command
By default the command will search for base_path('docs')
directory and put the filename as docs.md
.
To change the directory; You can change the directory like --directory=/path/to/dir
.
To change the file name; --output-file=filename
php artisan documentor:generate