- How do I install inlst/blade-lucide-icons in a Laravel app?
- Install it with Composer by running composer require inlst/blade-lucide-icons. The package is a thin view-layer shim, so there are no migrations, environment variables, or published assets required beyond an optional config publish for defaults such as size or stroke width. Once installed, the Blade components are auto-discovered and available in your templates. Verify the vendor and version constraint on Packagist before you commit to a pin.
- How do I render a Lucide icon in a Blade template?
- Use the package's Blade component syntax, for example <x-lucide-check /> using the icon name from the Lucide set, directly in any Blade view. The component outputs an inline SVG, so the icon inherits color and layout from its surrounding markup. Directives are also available as a shorthand in some setups. Icon names follow Lucide's kebab-case naming, so refer to the Lucide site for the exact name.
- Can I change the icon size, color, and stroke width?
- Yes. The components accept attributes for size, color, and stroke width, which are written onto the rendered SVG element. You can also pass a class and other HTML attributes through for finer control. Set project-wide defaults so most icons stay consistent and override only where the design calls for it.
- Does it work with Tailwind CSS?
- Yes. Because the icons are inlined SVG rather than an icon font or external sprite, Tailwind utilities such as w-5, h-5, and text-gray-500 apply directly to the component. Lucide icons draw with currentColor, so text color utilities control the stroke color and the size attributes control dimensions. This keeps icons consistent with the rest of your Tailwind design system without extra CSS.
- How do I use these icons in a Filament panel?
- The package includes a Filament icon registration hook, so you can map Filament's icon aliases to Lucide icons, typically with FilamentIcon::register([...]) in a service provider. That alias registration is the main reason to choose this package over a generic SVG helper in a Filament-centric application. There is no declared compatibility statement or visible CI matrix for Filament majors, so test the registration API against your Filament version, especially across v3 to v4.
- Can I install this alongside mallardduck/blade-lucide-icons?
- You should not. inlst/blade-lucide-icons appears to be a fork or re-publication of the mallardduck package and almost certainly registers the same component prefix and namespace, so co-installation will conflict. Pick one package and remove the other from composer.json before installing. If you are comparing alternatives, evaluate both against the upstream Lucide version you actually target.
- Which Laravel versions does the package support?
- The declared support range is not covered in the package overview, so check the composer.json on Packagist or the repository README for the illuminate/support and PHP constraints before installing. It is a presentation-layer package with no runtime services, queue, or database footprint, so constraints tend to be permissive. Pair it with a Laravel and PHP version you already run in CI and confirm the components render.
- Is the icon set kept in sync with upstream Lucide?
- Sync follows a batch catch-up pattern rather than continuous tracking: recent releases absorbed large upstream deltas in a single version bump. That means long gaps followed by big jumps, and Lucide renames or retired aliases render blank rather than throwing an error. If you hardcode icon names, wrap the component in a small internal helper, pin versions deliberately, and treat each upgrade as a review of every icon name you use.
- Does rendering these icons hurt performance or memory usage?
- Each icon is an inlined SVG, which is inexpensive to render. The real consideration is the PHP-side icon map of roughly 1,500 Lucide icons of path data, which is only material if it is eagerly autoloaded in full on every request. In normal component usage only the icons you reference are resolved, but confirm the loading strategy for your pinned version if you are sensitive to per-request memory.
- How do I test Blade views that render these icons?
- Assert on the rendered output with Laravel's standard view testing, checking that the response contains the expected SVG markup or a distinguishing attribute such as the icon name or class. Because the icons are inline, assertSee and assertContains work without any package-specific test helpers. Add a test that renders every icon name you hardcode, which catches silent blank renders after an upgrade.