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

Last Bundle Laravel Package

fw/last-bundle

fw/last-bundle is a compact Laravel/PHP package for managing a final bundle in your asset pipeline, helping ensure styles and scripts load in a predictable order with simple configuration and minimal overhead. It suits projects that need a clear last-loaded bundle without complex build changes.

View on GitHub
Deep Wiki
Context7

Technical Evaluation

Architecture fit. Poor, and the framing matters: fw/last-bundle is a Symfony 4 bundle, not a Laravel package. It assumes Symfony's Kernel, FrameworkBundle, dependency-injection extension, compiler passes, and bundle registration in config/bundles.php. Laravel uses service providers and its own container; it does not boot Symfony bundles. The only overlap is shared Symfony components (HttpFoundation, Console, Routing), and a bundle is not a component. Direct architecture fit is effectively zero — the package is a static-site generator for a framework we are not on.

Integration feasibility. composer require fw/last-bundle may resolve only against a Symfony 4 skeleton; on Laravel it will either fail dependency resolution (symfony/* ^4 constraints, PHP 7.1–7.4 era) or install inert code that cannot boot. Making it work inside Laravel is a port, not an integration: replacing bundle wiring, DI extension, compiler passes, and command registration with Laravel equivalents — in practice a rewrite. The only realistic reuse is its crawl-then-write-to-disk pattern, which is 30–60 lines of Laravel (Http facade + Storage + an Artisan command).

Technical risk. High and multi-layered. Symfony 4 is end-of-life (4.4 security support ended Nov 2023), so even on its native platform it is unsupported. Last release was 2018-08-31 — ~6 years stale — with 11 stars, zero dependents, and no maintainer activity. That combination means: no PHP 8.1/8.2/8.3 compatibility, no security patches, no ecosystem fixes, and transitively risky dependencies. The opportunity: 0.92 score should be read as category opportunity (static export for PHP apps is under-served), not package opportunity — high opportunity plus abandonware is a build signal, not a buy signal.

Key questions. (1) What's the actual driver — SEO, TTFB, cost, or offline/docs delivery — and does CDN caching already solve it? (2) How many routes and what content velocity? (3) Do any routes require auth or client-side JS, which SSG cannot capture? (4) Do we operate any Symfony 4 apps, or is this purely a Laravel estate? (5) Are we prepared to fork and own maintenance, and what's the exit cost of a 2-week spike?

Integration Approach

Stack fit. Our presumed baseline is Laravel 10/11 on PHP 8.1+. The package targets Symfony 4 on PHP 7.x. There is no version line where both are true. If the estate contains a legacy Symfony 4 app, the bundle is a plausible fit there — but that app is itself on an EOL platform and should be a decommission candidate, not a greenfield target.

Migration path. Not a migration; a replacement. Options, in order of preference: (A) do nothing and add CDN/HTTP caching to dynamic routes; (B) adopt a Laravel-native exporter (spatie/laravel-export, or Tighten Jigsaw if standalone docs/marketing is the use case); (C) build a thin Artisan command that crawls registered routes over HTTP and writes to Storage::disk('static') — this preserves LAST's "any Symfony/Laravel URL" pattern without its kernel coupling; (D) fork last-bundle and decouple the Symfony kernel — highest cost, lowest leverage.

Compatibility. Hard blockers on every axis: PHP constraint conflicts, Symfony 4 EOL, no Laravel support, no PHP 8 support, no maintained upstream. There is no partial-credit compatibility story.

Sequencing. (1) Product validates the SSG use case against a caching alternative. (2) 3–5 day spike with a Laravel-native exporter on a representative route set. (3) Build-vs-buy decision based on spike output. (4) Only mine last-bundle as a reference implementation for crawl/incremental-build ideas — never as a dependency. (5) If a Symfony 4 app exists, schedule its migration before considering the bundle at all.

Operational Impact

Maintenance. We would own 100% of it: the package is unmaintained since 2018 with no dependents to absorb fixes. That implies an internal fork, a private Composer repository, and ongoing PHP-upgrade and dependency-patching work — disproportionate overhead for a feature that a native exporter covers.

Support. Zero upstream responsiveness, zero community surface (11 stars, no dependents, no issue traffic), and no internal expertise yet. Any incident is a from-scratch debugging exercise in Symfony 4 bundle internals by a Laravel team.

Scaling. SSG scaling is build-time, not runtime. The crawl-based approach scales linearly with route count and per-request latency; fine for a few hundred marketing/docs pages, painful at 10k routes without batching and incremental rebuilds. Runtime improves dramatically once content is static behind a CDN — that benefit, however, is available from any exporter, not specifically this one.

Failure modes. Partial or silently incorrect output on auth-gated, JS-rendered, or parameterized routes; Composer resolution failures on install; stale content when the build isn't triggered on publish; unpatched transitive vulnerabilities; and no error surfacing from 2018-era code. The nastiest is silent HTML capture failure — builds "succeed" with wrong pages.

Ramp-up. Adopting the package means teaching a Laravel team Symfony 4 bundle conventions to maintain a fork — negative leverage. Adopting the pattern is a one-day task for a mid-level engineer writing an Artisan command. Recommendation: do not adopt fw/last-bundle; treat it as a design reference and pursue options A–C.

Recommendation: no-go on direct adoption; conditional go on a 3–5 day Laravel-native export spike.

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.
diephp/sequences
users-au/socialite-provider
twidpay/twid-logger
mrnewport/laravel-plaid
mrnewport/laravel-repo
mrnewport/laravel-docsign
mrnewport/laravel-stow
mrnewport/laravel-flow
mrnewport/laravel-priceable
mrnewport/laravel-nestedterms
fredmeng/laravel-apidoc-generator
itstructure/laravel-multilingual-tools
pdustdar/elasticsearch
markupai/php-sdk
rlacerda83/lumem-microservice-shipment
uni-method/symfony-lib
tacticmedia/scim-server-bundle
neika-ai/symfony-bundle
mattleads/agent-publishing-bundle
glavweb/framework-bundle