{"id":15293900,"url":"https://github.com/thunken/docdocgoose","last_synced_at":"2025-10-07T06:31:08.909Z","repository":{"id":57069347,"uuid":"157976311","full_name":"thunken/DocDocGoose","owner":"thunken","description":"Generates a clean HTML'd API documentation. Based on your routes declarations and filtered patterns.","archived":true,"fork":false,"pushed_at":"2020-08-13T12:41:56.000Z","size":30,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2024-11-15T08:18:19.111Z","etag":null,"topics":["api","documentation","generator","laravel","laravel-framework"],"latest_commit_sha":null,"homepage":"","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/thunken.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2018-11-17T11:06:09.000Z","updated_at":"2023-01-28T02:33:42.000Z","dependencies_parsed_at":"2022-08-24T14:54:16.324Z","dependency_job_id":null,"html_url":"https://github.com/thunken/DocDocGoose","commit_stats":null,"previous_names":[],"tags_count":22,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thunken%2FDocDocGoose","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thunken%2FDocDocGoose/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thunken%2FDocDocGoose/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thunken%2FDocDocGoose/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/thunken","download_url":"https://codeload.github.com/thunken/DocDocGoose/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":235599808,"owners_count":19016190,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["api","documentation","generator","laravel","laravel-framework"],"created_at":"2024-09-30T16:53:36.671Z","updated_at":"2025-10-07T06:31:03.604Z","avatar_url":"https://github.com/thunken.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"Generates a clean HTML'd API documentation. Based on your routes declarations and filtered patterns.\r\n\r\n# Install\r\n\r\n```bash\r\ncomposer require thunken/doc-doc-goose\r\n```\r\n\r\nAdd\r\n```php\r\nThunken\\DocDocGoose\\DocDocGooseProvider::class,\r\n```\r\nin *config/app.php* providers array\r\n\r\n## Publish files (if you need some tweaks on config and views)\r\n```bash\r\nphp artisan vendor:publish --provider=\"Thunken\\DocDocGoose\\DocDocGooseProvider\"\r\n```\r\n\r\n## Config changes\r\n\r\n```php\r\nreturn [\r\n    'routes' =\u003e [\r\n        'v1' =\u003e [\r\n            'patterns' =\u003e [ 'api.v1.*' ],\r\n            'rules' =\u003e [\r\n                'headers' =\u003e [\r\n                    'Authorization' =\u003e '\u003cYour API Key\u003e'\r\n                ]\r\n            ]\r\n        ]\r\n    ],\r\n    'cache' =\u003e [\r\n        'enabled' =\u003e true,\r\n        'store' =\u003e 'file'\r\n    ]\r\n];\r\n```\r\n\r\nHere you can manage versions, headers by version and caching feature.\r\n\r\n## Cache\r\nCache is enable by default and using the file store, you can disable it by putting 'enable' to false.  \r\n\r\nFile cache is the best cache method if your cache files are not persisted across deployment. It's a good way to ensure your documentation is up to date with the current version of your API code at each deployment.\r\nYou can reproduce this behavior by resetting the _Extractor::cacheName_ key in your choosen cache store.  \r\n\r\n## Facade \r\n\r\nAlready declared in provider so this should be useless. Still, to do so, add\r\n```php\r\n'Extractor' =\u003e Thunken\\DocDocGoose\\Facades\\Extractor::class,\r\n```\r\nin *config/app.php* facades array\r\n\r\n\r\n# Usage\r\n\r\n## In views\r\nAs simple as injecting \r\n```php\r\n{!! \\Extractor::renderMenu()  !!}\r\n```\r\nand / or\r\n```php\r\n{!! \\Extractor::renderContent()  !!}\r\n```\r\nin your templates.\r\n\r\n## Use the raw extractor output\r\n```php\r\n$extractor = app(Extractor::class);\r\n$extractor-\u003eextract();\r\n\r\n/** @var array $docsAsArray */\r\n$docAsArray = $extractor-\u003etoArray(); // returns an array\r\n\r\n/** @var Collection $docsAsGroups */\r\n$docsAsGroups = $extractor-\u003etoRaw(); // returns a Group Collection\r\n\r\n```\r\n\r\n# @TODOs\r\n- Goals description\r\n- Tests\r\n- Tests\r\n- And Tests\r\n\r\n# References and thanks\r\n* Widely and wisely using https://github.com/mpociot/laravel-apidoc-generator library (Thanks)\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthunken%2Fdocdocgoose","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fthunken%2Fdocdocgoose","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthunken%2Fdocdocgoose/lists"}