kreta/simple-api-doc-bundle
kreta/simple-api-doc-bundle provides lightweight API documentation generation for PHP applications. Annotate endpoints and publish clean, browsable docs without heavy dependencies. A minimal alternative to full-featured tools, it keeps setup quick and configuration simple so teams can document REST...
Verdict up front: this is not a Laravel package, and it is effectively abandoned. kreta/simple-api-doc-bundle is a Symfony bundle that sits on top of NelmioApiDocBundle. Its last release was 2016-02-01, it has 0 stars and 0 dependents, and it carries a Score of 0 with an opportunity score of 24.56. Any Laravel integration story is a port, not an adoption. As a TPM I would treat this as a reject for production use, with a narrow optional use as a historical reference for API-doc wiring.
Architecture fit. The package assumes Symfony's bundle/kernel model, service container tagging, and the NelmioApiDocBundle annotation-driven extraction pipeline. Laravel shares Symfony components but not the bundle runtime; there is no AppKernel, no bundle registration, no nelmio_api_doc config tree to merge. The bundle's value is thin — it is a convenience wrapper, not a documentation engine — so most of its behavior would have to be reimplemented anyway. Architecture fit with a Laravel codebase is poor to none.
Integration feasibility. Realistically, there are three paths, none cheap:
| Path | Effort | Outcome |
|---|---|---|
| Install as-is in Laravel | N/A | Not possible without Symfony bundle plumbing |
| Extract annotation/config patterns, rewrite for Laravel | Medium | Reimplements a wrapper for a dependency we'd still have to upgrade |
| Replace with a maintained Laravel-native tool | Low–Medium | Working OpenAPI 3 output on current PHP |
Because the package is a wrapper, the "extractable value" is small: some annotations, config conventions, and a rendering layer — all of which are reproducible in a week or less using modern tooling. The effort-to-value ratio does not justify a port.
Technical risk. High and largely unmitigable:
NelmioApiDocBundle (v2.x) and Symfony 2.x/3.0, which in turn constrains PHP to roughly 5.5–7.0. Modern Nelmio (v4/v5) and OpenAPI 3 are out of reach without a rewrite of the wrapper and the upstream.Key questions for the team.
Stack fit. None for Laravel. A Laravel-native replacement is the only sensible route. Recommended candidates, all actively maintained and PHP 8.x-compatible:
knuckleswtf/scribe — annotation/attribute-driven, generates docs plus Postman/OpenAPI; strongest "batteries included" fit for Laravel.dedoc/scramble — zero-annotation, introspects routes/controllers/form requests; lowest ramp-up.darkaonline/l5-swagger + zircote/swagger-php — if strict OpenAPI 3 with Swagger UI is mandatory.nelmio/api-doc-bundle — only relevant if the host app is Symfony, in which case the original wrapper is still the wrong choice; use Nelmio directly.Migration path. Treat this as replacement, not migration:
Compatibility. If, despite the above, someone insists on evaluating the bundle: verify it against a Symfony 2.8/3.0 + PHP 5.6/7.0 sandbox only. It will not install on PHP 8.x, and Composer will fail on Symfony 6/7 constraints. There is no Laravel compatibility tier to speak of.
Sequencing. The decision gate is week 0: confirm the requirement and rule the bundle out. Then spike the replacement in week 1, port in weeks 2–3, and run a spec-parity check before cutting over. Do not sequence any work behind this package — it is not on the critical path and should not become one.
Maintenance. Effectively zero upstream. There is no release cadence, no issue response, and no security patch channel. If adopted, maintenance cost is 100% internal: we would own the fork, the Symfony-version pins, and every CVE in the transitive tree. That is a permanent tax for a convenience wrapper.
Support. No vendor, no community, no dependents to consult. Internal engineers unfamiliar with Symfony 2-era bundle conventions will spend disproportionate time on what is, functionally, a small feature. Onboarding cost is high relative to the feature's value.
Scaling. Documentation generation is a build/CI-time concern, not a runtime scaling concern, so throughput is not the issue — schema scaling is. As the API grows, an unmaintained Swagger 2.0 emitter becomes a bottleneck: no OpenAPI 3 features (oneOf/anyOf, nullable semantics, proper security schemes), and divergence from what modern client generators and gateways expect. We would accumulate manual patches exactly when the API surface is growing fastest.
Failure modes.
Ramp-up. For a Laravel team, ramp-up on this bundle is negative — engineers must first learn Symfony bundle conventions and 2016-era Nelmio annotations before producing any value, and the output is still not what we want. By contrast, a Laravel-native replacement is a 1–2 day ramp-up for a mid-level engineer, with docs and active issue trackers.
Recommendation. Do not adopt. Keep it out of the dependency graph entirely. Run a one-week spike on a maintained Laravel-native generator against the OpenAPI 3 target, and record this package as evaluated-and-rejected with the abandonment date and framework mismatch as the rationale. The only defensible use is as a reading reference for how someone once wrapped Nelmio — and even that has near-zero value given how thin the wrapper is.
How can I help you explore Laravel packages today?