scalar/symfony
A Symfony bundle for integrating Scalar’s API reference UI into your application. Serve interactive, customizable API documentation from OpenAPI definitions with minimal setup and native Symfony routing.
Architecture fit. This release is scalar/symfony — a Symfony bundle. It is not a Laravel package, and the release notes contain no Laravel service provider, config publish tag, or config/scalar.php surface. For a Laravel estate the direct architectural fit is therefore low/indirect: the value is (a) confirmation that Scalar is investing in first-party PHP framework integrations, and (b) a reference implementation of the configuration model (configuration, multi-document rendering, theme defaults) that a Laravel wrapper would mirror. The rendering engine itself is the Scalar JS client, which is framework-agnostic — so the capability is portable even though this artifact is not.
Integration feasibility. Installing this into a Laravel app is not supported: the bundle relies on Symfony's bundle registration, Flex recipes, and route/config conventions. A Laravel team wanting this today has two realistic paths: use an existing community Laravel wrapper around the same Scalar client, or port the bundle's thin surface (a service provider, a config file, one catch-all docs route, and a Blade view) onto Laravel. That port is small — days, not weeks — but it is unsupported, unowned code that we would carry.
Technical risk.
^0.2.0 gives no semver stability guarantees; breaking changes can land in a minor. Combined with a public rename (scalar/symfony, namespace Scalar\Symfony), expect churn.scalar_options is a compatibility alias with no stated removal date.Key questions.
scalar/laravel on the roadmap, and on what timeline? This determines build-vs-wait.scalar_options?configuration, multi-document, theme) map 1:1 onto what a Laravel port would need, or is some of it bundle-internal?Stack fit. Poor for direct install; good as a design reference. The underlying Scalar renderer is the same in both ecosystems, so adopting the pattern (config-driven, route-served, multi-document API reference) carries no framework lock-in.
Migration path. Not applicable as stated — the documented migration is community-Symfony → first-party Symfony (package rename, namespace change, preserved bundle/route/config names, scalar_options → configuration). There is no migration path documented for Laravel, and none should be assumed. If we are on a community Laravel wrapper, this release is a signal to check whether that wrapper is tracking the same upstream client, not a signal to switch.
Compatibility. PHP 8.2+; Symfony 6.4, 7.2+, 8.x, gated by Symfony's own PHP floor. Those constraints are irrelevant to a Laravel app except as an indicator of the project's minimum platform posture — if our Laravel fleet is on PHP 8.1, we could not adopt a parallel first-party Laravel package built to the same baseline.
Sequencing.
Maintenance. Zero direct maintenance cost today because we should not be running it. The cost appears the moment we port or adopt a wrapper: we own a thin but non-trivial layer (provider, config, route, view, asset pinning) with no upstream contract, and we absorb upstream client changes manually.
Support. No Laravel support channel exists for this artifact. Internal questions land on whichever team built the port. Expect the docs route to become a lightly-owned, frequently-requested piece of surface area (product, sales engineering, and support all want it public; security wants it gated).
Scaling. Rendering is client-side, so load is essentially static asset + JSON/YAML delivery — cheap and cacheable. The scaling risks are not throughput but fan-out and freshness: multiple OpenAPI documents multiply routes and cache keys, and an unversioned client URL means the rendered UI can change under us without a deploy, complicating cache invalidation and incident triage.
Failure modes.
scalar_options alias removed in a minor → config silently ignored after an upgrade.Ramp-up. Low for a Laravel engineer to consume (a config file and a route). Moderate to port responsibly (path allowlisting, auth middleware, asset pinning, CSP). Near-zero organizational ramp-up for this release specifically, since the recommended action is to monitor rather than adopt — but the team should read the migration guide now to understand the option model before any Laravel-equivalent package appears, so the eventual adoption is a config exercise rather than a design exercise.
How can I help you explore Laravel packages today?