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
Nova Hero Icon

Nova Hero Icon Laravel Package

rmsj/nova-hero-icon

Integrates the Heroicons SVG icon set into Laravel Nova, letting you add crisp, ready-made icons to your admin panel resources and custom tools without bundling or managing the assets yourself.

View on GitHub
Deep Wiki
Context7

rmsj/nova-hero-icon integrates the popular Heroicons set into Laravel Nova, giving your admin panel clean, consistent SVG icons for resources, menus, and custom tools. It provides a Nova-friendly way to render icons without copying or managing SVG files manually.

  • Ready-to-use Heroicons collection in Nova components
  • Simple, consistent icon rendering for custom tools and resource UI
  • Lightweight SVG output with no extra asset pipeline
  • Easy integration into existing Laravel Nova projects
Frequently asked questions about Nova Hero Icon
How do I install rmsj/nova-hero-icon in Laravel Nova?
Install it with composer require rmsj/nova-hero-icon, then publish the package assets so the bundled Heroicons SVGs are available to Nova. The package is MIT licensed and the install itself is trivial; the real gate is whether your Nova major version matches. This is a May 2020 release built for Nova 2.x/3.x, Vue 2 and PHP 7.x, so confirm your stack before running the command. Pin the version and keep the installed code under your control if you need long-term stability.
Does rmsj/nova-hero-icon support Laravel Nova 4 or Nova 5?
The package targets Nova 2.x and 3.x with Vue 2 and PHP 7.x, and there is no published evidence of it running on Nova 4 or 5. Nova 4/5 use Vue 3 and PHP 8.2+, and the component will not mount reliably there. On a modern Nova install the better path is to scaffold a tool with php artisan nova:tool and reimplement the small picker against a current Heroicons release.
Is rmsj/nova-hero-icon a Nova field or a Nova resource tool?
The package description is ambiguous about whether it registers a Nova Field or a Nova Resource Tool, and the two shapes have different registration contracts (fields() versus tools()). Inspect vendor/rmsj/nova-hero-icon/src to see which class it extends and which fluent methods such as icon(), size() or color() actually exist. Resolve that before designing anything, because a field is contained to one resource form while a tool touches navigation and routing.
How do I render a saved Heroicon in my Nova resource index and detail views?
The package's contribution is a picker UI that persists an icon name as a string column; rendering the icon is your application's responsibility. Add the storage column yourself ($table->string('icon')->nullable()) plus the $fillable entry before the first save. Then hand-roll the display, for example with the <x-heroicon> Blade component, so the read path has zero dependency on this package. That boundary lets you swap the picker out later without touching your views.
Why is my Heroicon not showing after saving in Nova?
An invalid icon name renders an empty SVG with no exception, no log entry and no warning, so editors believe the save succeeded. That silent failure is the most likely cause of a 'the admin is broken' escalation weeks after the fact. Mitigate it with a Rule::in() whitelist built from the SVGs actually bundled in the package plus a visible fallback icon. Also check whether the markup hardcodes fill="#000", which makes icons vanish in Nova dark mode.
Can I use the latest Heroicons names from heroicons.com with this package?
No. The bundled SVGs are a 2020 revision of Heroicons, so names copied from the current heroicons.com will save fine and render nothing. Standardizing on this package means standardizing on an old icon vocabulary. Maintain a committed list of valid names scanned from the package's own SVG directory and validate against that list, not against the website.
Does rmsj/nova-hero-icon work in Nova dark mode?
There is a real risk that the SVG markup hardcodes fill="#000", which would make icons invisible against Nova's dark mode background. Verify this during a spike by rendering the icon in both light and dark themes. If the fill is hardcoded, override it in your own Blade rendering or patch the SVG output rather than relying on the package default.
Is rmsj/nova-hero-icon still maintained, and what are the alternatives?
Maintenance surface is effectively zero: around 7 stars, 0 dependents, a single stale release from 2020, no issue history and no active maintainer. The moment you install it you become the maintainer, so treat troubleshooting as first-principles work. Alternatives are to hand-roll a small picker with php artisan nova:tool against a current Heroicons release or use a maintained icon field package. Vendor or fork the code and pin a commit if you keep it in production.
How do I validate icon names saved through this Nova icon picker?
Because an unknown icon name renders nothing at all, validation is the whole safety net. Build a Rule::in() list from the SVG filenames bundled in the package rather than from heroicons.com, and apply it to the field in your Nova resource. Pair it with a visible fallback icon in the index and detail views so a bad value is obvious instead of invisible.
What PHP and Laravel versions does rmsj/nova-hero-icon require?
composer.json constrains laravel/nova and php, and reading it is a five-minute go/no-go check before any design decision. As a May 2020 release it targets Nova 2.x/3.x with PHP 7.x, so PHP 8+ and Nova 4/5 sit outside the tested matrix. Treat compatibility as a tested property rather than a semver inference, because Nova's tool and asset APIs are effectively undocumented internals.
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