misterbk/mix
A Laravel integration for Laravel Mix that adds helpers and Blade directives to resolve compiled CSS/JS paths from mix-manifest.json, making versioned assets easy to reference and cache-bust without hardcoding URLs in your templates.
Architecture fit
The first finding is a premise correction that materially changes the evaluation: misterbk/mix is not a Laravel package. It is a Craft CMS plugin (Yii2-based, installed via Composer into a Craft project) whose only job is to expose a Twig mix() helper that resolves asset paths from a Laravel Mix mix-manifest.json. It borrows Laravel's front-end build convention, not its framework runtime.
That constrains fit sharply:
mix() in Blade natively; this package adds nothing there.So the addressable population is "Craft sites still on Mix." That is a shrinking set, which is consistent with the low opportunity score (19.94) and the 0 dependents.
Integration feasibility
Low effort, small surface area. Roughly:
composer require misterbk/mix{{ siteUrl }}/dist/... paths with {{ mix('js/app.js') }}There is no service layer, no database schema of consequence, no queue jobs, no event surface that a typical project would hook. The plugin is a thin resolver over a JSON file. Integration can be scoped to a single ticket and validated in a dev environment in under a day.
Technical risk
composer update, not a migration.Key questions
.hot file for HMR in local development, and does it fail safe when .hot exists in a non-local environment?Stack fit
Target stack is Craft CMS + Twig + Composer, with an existing webpack.mix.js producing hashed filenames and a mix-manifest.json. If the front end is already on Vite, this package should be rejected outright and a Vite-oriented Craft plugin used instead. If the team is a Laravel shop extending into Craft, the mental model transfers immediately — this is the main reason to consider it at all.
Migration path
Two viable paths, and the choice should be made explicitly rather than by default:
mix() calls template by template. Lowest disruption; leaves the Vite question for later.mix()-shaped Twig shim so templates do not churn. Slightly higher upfront cost, avoids building on a sunset tool.Given the low dependents count and the trajectory of Mix, I would default to the second path for any greenfield or actively-developed Craft site, and reserve the first for maintenance-mode sites where the build pipeline is frozen and the only goal is removing hardcoded paths.
Compatibility
Verify against the project's locked Craft, PHP, and Twig versions before committing. Because the plugin touches only the Twig rendering layer, compatibility failures will surface immediately at install or first render rather than as subtle runtime defects — an easy gate.
Sequencing
.hot file present..hot is absent.Maintenance
Near-zero ongoing effort — the plugin has no moving parts beyond reading a JSON file. The real maintenance burden is the build pipeline, not the plugin. The risk to plan for is a Craft major upgrade where the plugin has not yet been updated; because it is a thin Twig extension, we should assume we may need to patch or fork it ourselves. Budget a small contingency, not a workstream.
Support
Community-only: GitHub issues from a single maintainer. No commercial support, no security advisory process to rely on. Acceptable for a non-sensitive, render-time helper; unacceptable if we were treating it as infrastructure.
Scaling
Effectively free at runtime. Manifest resolution is a file read and array lookup per render; with opcache and sensible manifest caching it will not register in profiling. Static asset delivery is unchanged — CDN and cache headers are governed by the app's asset configuration, not by this plugin. No scaling concerns.
Failure modes
These are the ones worth writing runbooks for, because they are all deploy-time and all user-visible:
.hot file deployed to production — templates resolve to localhost:8080, every asset 404s. Highest-severity and most common failure. Needs a CI assertion that .hot is absent from the artifact.Ramp-up
Trivial. A developer familiar with Laravel Mix needs minutes; a developer unfamiliar with Mix needs to learn webpack.mix.js, which is the larger cost and is independent of this plugin. Documentation load is one README. This is not a package that requires a training plan — it requires a one-paragraph note in the front-end README explaining where the manifest lives and why .hot must never ship.
How can I help you explore Laravel packages today?