Launch sale: 50% off Lucent, Prizm & Cypher until Nov 13. Citrus is out now at its $39 launch price.

Remix Icons

Replace every icon in your Filament panel with Remix Icon, in line or fill style, including the rich editor toolbar and multi-factor auth. All 3,229 icons as an enum, one line of setup.

4.x 5.x
Remix Icons

What it does

Swaps every icon Filament draws for its Remix Icon counterpart, in one line. That covers the sidebar, tables, forms, actions, notifications and the user menu, and also the parts icon packs usually miss: the rich editor toolbar, multi-factor auth, callouts and the query builder. All 223 icon aliases in Filament 5 are mapped. All 3,229 Remix icons are available as a PHP enum, so you can use them in your own resources too.

Requirements

  • PHP 8.2+
  • Filament v4 or v5

Installation

Install the package with Composer:

composer require filafly/filament-remix-icons

Then register the plugin in your Filament panel provider:

use Filafly\Icons\Remix\RemixIcons;

public function panel(Panel $panel): Panel
{
    return $panel
        ->plugin(RemixIcons::make());
}

That's it: reload the panel and every Heroicon is replaced.

Line or fill

Remix Icon comes in a line style (the default) and a fill style. Switch the whole panel with one call:

RemixIcons::make()->fill();

Or keep line icons and fill only a few:

use Filafly\Icons\Remix\Enums\Remix;
use Filafly\Icons\Remix\Enums\RemixStyle;
use Filament\Actions\View\ActionsIconAlias;

RemixIcons::make()
    ->overrideStyleForAlias(ActionsIconAlias::DELETE_ACTION, RemixStyle::Fill)
    ->overrideStyleForIcon(Remix::SearchLine, RemixStyle::Fill);

A few editor icons (bold, italic, headings) only exist in one style and look the same in both.

Using the icons in your own resources

use Filafly\Icons\Remix\Enums\Remix;

protected static string | BackedEnum | null $navigationIcon = Remix::TeamLine;

Overriding individual icons

Change the icon for a Filament alias

use Filafly\Icons\Remix\RemixIcons;
use Filafly\Icons\Remix\Enums\Remix;
use Filament\Tables\View\TablesIconAlias;
use Filament\View\PanelsIconAlias;

// One alias
RemixIcons::make()->overrideAlias(TablesIconAlias::ACTIONS_FILTER, Remix::FilterLine);

// Several aliases at once
RemixIcons::make()->overrideAliases([
    TablesIconAlias::ACTIONS_FILTER => Remix::FilterLine,
    PanelsIconAlias::SIDEBAR_EXPAND_BUTTON => Remix::ArrowRightDoubleLine,
]);

Replace one icon with another everywhere

// One icon
RemixIcons::make()->overrideIcon(Remix::DeleteBinLine, Remix::DeleteBin7Line);

// Several icons at once (PHP arrays can't use enums as keys, so use ->value)
RemixIcons::make()->overrideIcons([
    Remix::DeleteBinLine->value => Remix::DeleteBin7Line,
    Remix::EditBoxLine->value => Remix::PencilLine,
]);

Source and credits

The package is free and open source under the MIT license.

Have questions about Remix Icons? Get help in our Discord community.

FilaFly also makes premium themes for Filament panels: Lucent, Prizm, Cypher and Citrus. Browse the themes.

Launch sale: 50% off Lucent, Prizm & Cypher until Nov 13. Citrus is out now at its $39 launch price.