Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Swagger Ui Bundle Laravel Package

hypecodeteam/swagger-ui-bundle

Swagger UI Bundle integrates Swagger UI into Laravel, making it easy to publish and browse interactive OpenAPI/Swagger documentation. It bundles the needed assets and routes so you can expose API docs with minimal setup and configuration.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Whether API documentation is a product surface or an afterthought. This package solves only the last mile: serving a Swagger UI page at a configurable route against an OpenAPI spec you already maintain. Its real PM value is as a forcing function — it forces the explicit decision of whether a browsable API reference is part of the customer experience (partner onboarding, integration support deflection, developer self-service) or whether a static spec file in the repo is good enough. Answer that question first; the package choice is downstream of it.
  • Build vs. buy for a ~30-line problem. Strip away the wrapper and the entire capability is: register one route, serve the bundled Swagger UI static assets, point at a spec. For a Laravel team this is a controller, a config entry, and a Blade view. The default PM position should be build it unless the package demonstrably handles something harder — spec generation, auth, multi-spec routing, caching, validation. It does not.
  • Platform-fit as a first-class evaluation criterion. This is a Symfony bundle (registered via config/bundles.php), not a Laravel package. Laravel's package auto-discovery will not touch it, and there is no supported way to boot a Symfony bundle inside a Laravel kernel. If the request was filed as "a Laravel dependency," the correct PM outcome is to close the ticket on the mismatch alone — before any feature comparison, any spike, any legal review. Recording that as a decision saves the org a wasted cycle.
  • Roadmap scoping for public and partner APIs. If an external API ships this quarter, "where do consumers read the docs, and is that route authenticated?" becomes a real roadmap line item with real owners (docs hosting, spec generation, access control). This package informs the low end of that estimate — the viewer — not the high end. Use it to bound scope, not to justify skipping the rest.
  • License exposure as a gating decision, not a post-merge surprise. GPL-3.0 is copyleft. For distributed or on-prem software it can be a hard legal blocker; for a hosted SaaS where code is never conveyed it is usually manageable but still requires counsel sign-off. Treating license review as a checkbox after the technical spike is exactly how releases slip — so route it in parallel, and early.

The framing to give whoever filed this: 0 stars, 0 dependents, and no maintenance history mean this is not a dependency decision — it is a code-reading exercise. If the route behavior is useful, harvest the pattern. Do not adopt the package.

When to Consider This Package

Consider it — narrowly — only when all of the following hold:

  • The service is genuinely Symfony-based and you want a near-zero-config /docs route over an existing, already-generated OpenAPI file.
  • The OpenAPI spec is maintained elsewhere (hand-written or produced by a separate generator) and you need only a viewer, not generation from code.
  • Your legal posture tolerates GPL-3.0, or the component stays internal/isolated and is never distributed.
  • You are prepared to fork and pin it internally — treating it as a reference implementation you own rather than a live upstream dependency.

Look elsewhere — or simply build it — when:

  • You are on Laravel. Use a maintained, Laravel-native option (darkaonline/l5-swagger for spec generation plus UI, knuckleswtf/scribe for docs generated from routes/annotations), or write the one route yourself. Do not bend a Symfony bundle into a Laravel app — that adapter work is yours to own forever.
  • You need spec generation from code, not just rendering. This package renders only.
  • GPL-3.0 conflicts with your distribution model and legal won't budge. This is a legitimate standalone disqualifier.
  • You need the docs route behind auth, SSO, or per-tenant scoping. Expect to build that yourself regardless of which viewer you pick.
  • You need support guarantees, security patching, a changelog you can hand an auditor, or evidence anyone has run this in production. Zero dependents is the signal here.

The honest addressable use case: "Symfony app, existing spec, internal audience, comfortable with GPL, willing to own the fork." That is a small intersection — small enough that the expected PM answer is usually to close the request and reuse the pattern.

How to Pitch It (Stakeholders)

To executives (30 seconds): This is a small convenience wrapper that puts an API documentation page at a /docs URL. It is not a strategic component and it is not a dependency I recommend taking on — it's a pattern we can replicate in about a day. The decision actually in front of us is bigger: are we committing to a public API reference as part of the product this quarter? If yes, we should scope it properly — spec generation, authentication, hosting, ownership — rather than adopt a 0-star wrapper. If no, we close this and revisit when external API consumers exist. Either way, the cost of not adopting it is negligible and the risk of adopting it is not.

To engineering (the practical ask): It's a Symfony bundle, so it's a non-starter for our Laravel services — please confirm the platform assumption before anyone spends more time on it. If the asset-serving behavior is genuinely useful, fork the approach, not the code: one route, one controller, serve the Swagger UI assets locally, point at our existing spec. Then flag two things before any commitment — the GPL-3.0 license to legal, and the fact that a route named /docs risks colliding with or accidentally exposing internal endpoints if it isn't gated to dev/staging and put behind auth. Keep the route and the UI asset directory behind config so the choice is reversible. Recommendation: do not adopt as a dependency; harvest the pattern and own it.

Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
jinas/dhivatar
store-doc/laravel-storage-driver
plus-it/laravel-translation-manager
diephp/perhaps
diephp/telegraph
osmaviation/spreadsheet
microsoft/fluentui-system-icons
mmccook/php-json-canonicalization-scheme
middlewares/firewall
qubiqx/montapacking
nyoncode/laravel-package-console
pnscripts/filament-broadquill-lite
pnscripts/laravel-sentfold-lite
vleap/mx-sdk-laravel-internal
twidpay/utils
htetmyathlaing/scout-elasticsearch-driver
artisan-toolbox/front-awesome
ls/client-assistant
users-au/laravel-client
cgv/localized-resource