agrodata/laravel-data-openapi-generator

Generate OpenAPI specification from Laravel routes and Laravel Data objects.

Maintainers

👁 agrodatabr

Package info

bitbucket.org/agrodatabr/laravel-data-openapi-generator

pkg:composer/agrodata/laravel-data-openapi-generator

Statistics

Installs: 14

Dependents: 0

Suggesters: 0

0.3 2025-01-16 20:53 UTC

Suggests

None

Provides

None

Conflicts

None

Replaces

None

MIT 0e076f7c0b1902ff0120436fb98da03bd496b3c2

  • Robert Groot <r.groot.woop@xolvio.nl>

This package is not auto-updated.

Last update: 2026-06-20 01:29:38 UTC


README

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/xolvionl/laravel-data-openapi-generator"
 }
 ],

Install

composer require xolvio/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