Plugins
Favicon
Easiest way to add favicons to your table and schemas
Infolist entry
Table Column
Dark theme support
Yes
Multi language support
No
Compatible with the latest version
Supported versions: 4.x
Documentation

header

Latest Version on Packagist Software License GitHub Workflow Status Total Downloads

#Installation via Composer

composer require pxlrbt/filament-favicon

#Features

#FaviconColumn

Display website favicons in your Filament table columns:

use pxlrbt\FilamentFavicon\Filament\FaviconColumn;
 
FaviconColumn::make('website')

The column automatically fetches and caches favicons based on the domain value. The state must be a domain name (e.g., example.com).

If you need to extract the domain from a URL, use the state() method:

FaviconColumn::make('website')
->state(fn ($record) => parse_url($record->website, PHP_URL_HOST))

#FaviconEntry

Display website favicons in your Filament infolists:

use pxlrbt\FilamentFavicon\Filament\FaviconEntry;
 
FaviconEntry::make('website')

The entry automatically fetches and caches favicons based on the domain value. The state must be a domain name (e.g., example.com).

If you need to extract the domain from a URL, use the state() method:

FaviconEntry::make('website')
->state(fn ($record) => parse_url($record->website, PHP_URL_HOST))

#Configuration

Publish the config file:

php artisan vendor:publish --tag=filament-favicon-config

Available options:

return [
// Favicon fetcher service (DuckDuckGo or IconHorse)
'diver' => \pxlrbt\FilamentFavicon\Drivers\IconHorse::class,
 
// How long to keep favicons before re-fetching
'stale_after' => CarbonInterval::week(1),
 
// Storage configuration
'storage' => [
'disk' => 'public',
'directory' => 'favicons',
],
];

#Favicon Drivers

This package includes two favicon drivers:

IconHorse (default)

  • Dedicated favicon service with enhanced reliability
  • Free tier: up to 1,000 lookups per month
  • Paid plans available for higher volumes
  • Class: \pxlrbt\FilamentFavicon\Drivers\IconHorse::class

DuckDuckGo

  • Uses DuckDuckGo's search engine index to fetch favicons
  • No rate limits or usage restrictions
  • Free and unlimited
  • Class: \pxlrbt\FilamentFavicon\Drivers\DuckDuckGo::class

To switch drivers, update the driver option in your config file.

#Clear Favicons

Clear all cached favicons:

php artisan favicons:clear

#Contributing

If you want to contribute to this packages, you may want to test it in a real Filament project:

  • Fork this repository to your GitHub account.
  • Create a Filament app locally.
  • Clone your fork in your Filament app's root directory.
  • In the /filament-favicon directory, create a branch for your fix, e.g. fix/error-message.

Install the packages in your app's composer.json:

"require": {
"pxlrbt/filament-favicon": "dev-fix/error-message as main-dev",
},
"repositories": [
{
"type": "path",
"url": "filament-favicon"
}
]

Now, run composer update.

#Credits

Dennis Koch

Dennis, a Filament core-team member, is dedicated to delivering high-quality plugins for your Filament projects. He is a freelance full-stack developer who works on several Laravel projects either individually or as part of small teams. In his work, he utilizes both Livewire and Inertia.

8
Plugins
1,475
Stars
More from this author
Featured Plugins