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

Basset Laravel Package

etrepat/basset

Basset is a Laravel asset management package that collects, compiles, combines, and minifies CSS and JavaScript. It supports preprocessors, asset collections, named assets, and cache-friendly URLs to simplify frontend asset pipelines.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Legacy modernization business case. Basset is a strong marker of a Laravel 4.x/5.x-era asset pipeline (Blade-driven collections, @basset directives, server-rendered <script>/<link> tags). Finding it in a codebase is a concrete data point for scoping an "asset pipeline → Vite" workstream in a platform upgrade roadmap.
  • Build vs. buy vs. replace. The package's core value proposition — declaring named asset collections in config/Blade and letting the server emit correctly ordered, minified tags — is the exact problem solved today by Vite, Laravel Mix, or a ~150-line in-house Blade component. Use Basset as a reference spec for what your replacement must preserve (collection ordering, per-view conditional includes, environment-aware compilation), then decide whether parity warrants custom code or an off-the-shelf tool.
  • Vendor and dependency risk register. With ~14 stars, a single maintainer, and a 0.23 health score, Basset is an abandoned dependency. The PM decision it supports is "contain and schedule removal," not "adopt": no PHP 8 compatibility guarantees, no security patching, and a hard ceiling on Laravel version upgrades while it remains in the tree.
  • Migration effort estimation. Because Basset configs enumerate asset collections explicitly, they double as an inventory of every JS/CSS bundle the app ships. That inventory is the input to sizing a migration (number of collections × number of consuming views) and to de-risking "we don't know what loads where" unknowns before a redesign.
  • Feature/roadmap de-prioritization. Any roadmap item that touches front-end delivery (HMR, code splitting, ES modules, cache-busting via content hashes, CDN integration) is blocked or degraded while Basset is in the path. Surfacing this lets you sequence front-end work after the pipeline swap rather than retrofitting twice.
  • Use cases where it still earns its keep: read-only audits of legacy apps, documenting behavioral parity for a rewrite, and short-lived maintenance branches where rewriting the pipeline is out of scope for the release.

When to Consider This Package

Consider it only in these situations:

  • You have inherited a Laravel 4.x or 5.x application that already depends on Basset, and your immediate need is to understand and safely maintain the existing pipeline rather than replace it mid-release.
  • You need to document current asset behavior (collection ordering, conditionals, minification) as a parity contract before a migration.
  • You are conducting a technical due-diligence or acquisition review and need to classify the dependency as low-risk-to-tolerate or high-risk-to-remove.
  • You are building a throwaway internal tool on an ancient stack where the Blade-native syntax shortens delivery and nothing will ever be publicly exposed.

Look elsewhere — decisively — when any of the following hold:

  • Greenfield or Laravel 8+: use Vite with laravel-vite-plugin; the ecosystem, docs, and hiring pool are all there.
  • You need a maintained dependency: no security response, no PHP 8+ guarantees, no Laravel 10/11 support path. An abandoned package in the asset path is an upgrade blocker, not a convenience.
  • You need modern delivery: HMR, ES modules, tree shaking, content-hashed filenames for immutable caching, HTTP/2 multiplexing, TypeScript, or CI-integrated builds. Basset's server-side compilation model does not map onto these.
  • Compliance or audit applies: an unmaintained, single-maintainer package with a tiny contributor base will not survive a supply-chain review.
  • You are weighing adoption on its merits: the 0.23 score and 14 stars mean there is effectively no community, no issue triage, and no realistic path to upstream fixes. Treat it as archival source, not a dependency.

How to Pitch It (Stakeholders)

To executives: Basset is not a strategic asset — it is a legacy signal. Its presence tells us an application's front-end delivery layer predates modern tooling, which means it is also capping our framework upgrade path and blocking front-end performance work (caching, code splitting, CDN). The recommendation is not to invest in it; it is to budget a scoped, one-time migration to Vite, sized from the asset collections Basset already enumerates. Framing: "we found the thing that's holding the upgrade back, and we can now estimate the fix."

To engineering: Basset was a reasonable, ergonomic answer to "declare asset bundles and emit ordered tags from Blade" — collections in config, @basset directives, environment-aware minification. If you're in a legacy app using it, learn the collection definitions first; they are the map of the front-end. But do not extend it: it is unmaintained, single-maintainer, has ~14 stars, no PHP 8 or modern Laravel support, and no HMR or ES-module story. Treat it as a frozen dependency: pin the version, contain any new usage behind a lint rule or code review check, and migrate to laravel-vite-plugin on a defined timeline. The migration is well-bounded because the collections already tell us every bundle and every consuming view — the work is mechanical, not exploratory.

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.
uni-method/symfony-lib
tacticmedia/scim-server-bundle
neika-ai/symfony-bundle
mattleads/agent-publishing-bundle
glavweb/framework-bundle
glavweb/extra-bundle
glavweb/api-bundle
glavweb/admin-bundle
adachsoft/api-version-bundle
elsayed85/laravel-api-exceptions
ouhssini/laravel-demo-mode
daworks/ncloud-outbound-mailer-driver
gp247/cms
ignibyte/aic-gates
nexa-merchant/blog
novasa/laravel-language-center
opencage/geocode
adolfoholzer/parameters
livenetworks/ln-starter
shitoudev/permissionmanager