- What does fidum/nova-package-bundler-command actually do?
- It adds a dev-time Artisan command for Laravel Nova package developers that bundles an extension's files and assets into a distributable package. It registers no middleware, migrations, or request-lifecycle hooks, so its only side effects are filesystem writes. Public descriptions of the package vary between asset consolidation and Composer-ready packaging, so run the command's --help on staging to confirm the exact behaviour of the installed version.
- How do I install fidum/nova-package-bundler-command?
- Install it with Composer, preferably as a dev dependency: composer require --dev fidum/nova-package-bundler-command. No migrations, published config, credentials, or external services are needed to start. Confirm the command registers with php artisan list, then read the authoritative signature and options with --help before wiring it into scripts.
- Which Laravel and Nova versions are supported?
- The package is only meaningful in a project with laravel/nova installed and does nothing useful in a plain Laravel app. Release 1.8.1 widened the Laravel framework constraint, but that is a compatibility signal for this package only; Nova's own Laravel support is the real gate for your upgrade. Check the constraint in composer.json for the version you install before bumping Laravel.
- Should I install it as a dev dependency or in production?
- Always as require-dev, in every scenario. If you author Nova packages, it belongs in the package repository's dev dependencies; the consuming application receives compiled files through Composer and should never need it. Keeping it out of production dependencies also means you can remove it in a single pull request with zero application-code changes.
- Does it work with Nova tools, cards, and resources?
- Yes, it is positioned for Nova tools, cards, and resources, which all ship PHP classes alongside JS and CSS assets. Nova's asset registration via Nova::script() and Nova::style() in your NovaServiceProvider remains the source of truth for what loads at runtime. The command only prepares the files those calls point at for distribution.
- Do I need Node or a frontend build step to use it?
- Not necessarily, since the command itself runs in PHP through Artisan. Node is only relevant if the installed mode turns out to be a build pipeline rather than simple asset consolidation. Read the small command class under vendor/fidum/nova-package-bundler-command/src/ to confirm which mode you have.
- What happens to the bundle when I add or upgrade a Nova tool?
- If the command consolidates assets into a single file, that output goes stale as soon as a tool is added, upgraded, or removed. The typical failure is a component that renders but is inert, not a build error, which makes it easy to miss. Re-run the bundler as part of every release where Nova dependencies change.
- How should I test the bundled output before releasing?
- Run a staging pilot with your real set of Nova tools installed, capturing the before state such as asset file counts and admin load time. After bundling, verify Nova boots and each tool, card, and resource renders and responds. Watch the browser console for merge-order errors, since combining multiple tools' Vue registrations makes global load order matter.
- What are the main risks of adopting this package?
- Documentation ambiguity is the biggest one: two incompatible framings mean a process built on the wrong mode wastes the pilot entirely. It also has a bus factor of roughly one maintainer, about 21 stars, and few dependents, so no downstream ecosystem has validated it in production. Treat it as best-effort upstream and keep a scripted fallback such as manual file collection and zipping.
- Can I use it outside Nova, and are there alternatives?
- No, it is dead weight in any Laravel app without laravel/nova installed. Alternatives are manual file collection with a release script, a small custom Artisan command, or private Composer repositories such as Satis for distribution. Because it is require-dev and self-contained, swapping any of these in later is low risk.