laravel-data-openapi-generator maintained by nicoandra
Description
Generate OpenAPI specification from Laravel routes and Laravel Data objects.
Authors
Last update
2026/04/18 03:44
(dev-php-8.4)
License
Downloads
20
OpenAPI Generator using Laravel Data
Generate OpenAPI specification from Laravel routes and Laravel Data objects
Install
Add composer repository
In composer.json add this repository:
"repositories": [
{
"type": "github",
"url": "https://github.com/nicoandra/laravel-data-openapi-generator"
}
],
Install
composer require nicoandra/laravel-data-openapi-generator
Optional
Version
Add a app.version config in app.php to set the version in the openapi specification:
'version' => env('APP_VERSION', '1.0.0'),
Vite PWA config
If using vite-plugin-pwa, make sure to exclude '/api/' routes from the serviceworker using this config:
VitePWA({
workbox: {
navigateFallbackDenylist: [
new RegExp('/api/.+'),
],
},
})
Vue page
<route lang="json">
{
"meta": {
"public": true
}
}
</route>
<template>
<iframe
:src="url"
style="width: calc(100vw - 40px);height: calc(100vh - 80px); border: none;"
/>
</template>
<script lang="ts" setup>
const url = `${import.meta.env.VITE_APP_URL}/api/openapi`;
</script>
Usage
Config
php artisan vendor:publish --tag=openapi-generator-config
Generate
php artisan openapi:generate
View
Swagger available at APP_URL/api/openapi
Development
- Run
make installto install all dependencies - Run
make testto run tests