#favicon — Public Fediverse posts
Live and recent posts from across the Fediverse tagged #favicon, aggregated by home.social.
-
𝗖𝗼𝗺𝗽𝗹𝗲𝘁𝗲 𝗴𝘂𝗶𝗱𝗲 𝗮𝗯𝗼𝘂𝘁 𝗳𝗮𝘃𝗶𝗰𝗼𝗻:
https://thewhale.cc/posts/complete-guide-about-favicon
Audrey Roy has written this cheat sheet favicon sizes/types on her GitHub account to help your website shine in society.
-
Self-Host Weekly (26 June 2026)
An intro to #ATProto, software updates and launches, a spotlight on #Ignis - a web-based #Obsidian implementation, and more in this week's #selfhosted recap!
https://selfh.st/weekly/2026-06-26/
#selfhost #selfhosting #foss #opensource #homelab #newsletter #privacy #sysadmin #devops #fediverse #photos #smarthome #bluesky #favicon #development #app #apps #software
-
Self-Host Weekly (26 June 2026)
An intro to #ATProto, software updates and launches, a spotlight on #Ignis - a web-based #Obsidian implementation, and more in this week's #selfhosted recap!
https://selfh.st/weekly/2026-06-26/
#selfhost #selfhosting #foss #opensource #homelab #newsletter #privacy #sysadmin #devops #fediverse #photos #smarthome #bluesky #favicon #development #app #apps #software
-
#Development #Fun
I stored a website in a favicon · “This is probably the smallest website I’ve built.” https://ilo.im/16dx49_____
#Favicon #Website #Storage #Browsers #APIs #WebDev #Frontend #HTML #JavaScript -
#Development #Fun
I stored a website in a favicon · “This is probably the smallest website I’ve built.” https://ilo.im/16dx49_____
#Favicon #Website #Storage #Browsers #APIs #WebDev #Frontend #HTML #JavaScript -
🥳🎉 "Tim's #Favicon Fiasco! 🎨: Where storing a whole website in a 16x16 pixel square is the latest in digital minimalism. Because why store data efficiently when you can turn your browser's tab bar into a clown car of uselessness? 🚗💨"
https://www.timwehrle.de/blog/i-stored-a-website-in-a-favicon/ #Fiasco #DigitalMinimalism #ClownCar #Uselessness #WebDesign #HackerNews #ngated -
🥳🎉 "Tim's #Favicon Fiasco! 🎨: Where storing a whole website in a 16x16 pixel square is the latest in digital minimalism. Because why store data efficiently when you can turn your browser's tab bar into a clown car of uselessness? 🚗💨"
https://www.timwehrle.de/blog/i-stored-a-website-in-a-favicon/ #Fiasco #DigitalMinimalism #ClownCar #Uselessness #WebDesign #HackerNews #ngated -
New blog post: This blog got a new favicon thanks to the Small Web
Thanks to the magic of the Small Web, a stranger I'd never met handcrafted a new favicon for this blog.
-
New blog post: This blog got a new favicon thanks to the Small Web
Thanks to the magic of the Small Web, a stranger I'd never met handcrafted a new favicon for this blog.
-
RealFaviconGenerator: generare #Favicon perfette per #ios #Android e #Desktop
#generatori #grafica @diggitahttps://webappsmagazine.blogspot.com/2026/04/realfavicongenerator-generare-favicon.html
-
RealFaviconGenerator: generare #Favicon perfette per #ios #Android e #Desktop
#generatori #grafica @diggitahttps://webappsmagazine.blogspot.com/2026/04/realfavicongenerator-generare-favicon.html
-
I've seen countless Mastodon instances with the default icon. How feasible it is to replace it with an original one?
-
I've seen countless Mastodon instances with the default icon. How feasible it is to replace it with an original one?
-
Ich habe versucht, das Favicon meines Blogs zu ändern, aber das Ergebnis sah in kleinen Auflösungen einfach nicht gut aus. Ich möchte aber ein neues, nicht langweiliges Favicon für mein Blog. Hat irgendjemand Ideen für ein Favicon, das zu meinem Blog passen könnte? Idealerweise eins, das sich halbwegs gut als SVG umsetzen lässt?
https://blog.strangerthanusual.de/blogposts/katzensilhouette
-
Ich habe versucht, das Favicon meines Blogs zu ändern, aber das Ergebnis sah in kleinen Auflösungen einfach nicht gut aus. Ich möchte aber ein neues, nicht langweiliges Favicon für mein Blog. Hat irgendjemand Ideen für ein Favicon, das zu meinem Blog passen könnte? Idealerweise eins, das sich halbwegs gut als SVG umsetzen lässt?
https://blog.strangerthanusual.de/blogposts/katzensilhouette
-
Need favicons for a project? Most generators either watermark the output or require an account.
Built a free one: upload an image OR type a letter/emoji, pick a color, get all sizes (16x16 → 512x512) as a ZIP download.
Runs in your browser. No uploads, no signups.
-
Need favicons for a project? Most generators either watermark the output or require an account.
Built a free one: upload an image OR type a letter/emoji, pick a color, get all sizes (16x16 → 512x512) as a ZIP download.
Runs in your browser. No uploads, no signups.
-
Les favicons SVG semblent être de mieux en mieux supportées.
🔗 https://pawelgrzybek.com/svg-favicons-that-respect-theme-preference/
-
It is 2026 and I’m ready to adopt a single SVG file for the favicon. The cool thing is that you can make your favicon respect user theme preferences. It has been blogged about many times before.
by @argyleink:
https://web.dev/articles/building/an-adaptive-faviconby @tomayac:
https://blog.tomayac.com/2019/09/21/prefers-color-scheme-in-svg-favicons-for-dark-mode-icons/…but. This is still not working in Safari. Safari ignores user preference overrides inside the SVG styles. Is there an open issue for this on @jensimmons, or do you want me to make one?
-
It is 2026 and I’m ready to adopt a single SVG file for the favicon. The cool thing is that you can make your favicon respect user theme preferences. It has been blogged about many times before.
by @argyleink:
https://web.dev/articles/building/an-adaptive-faviconby @tomayac:
https://blog.tomayac.com/2019/09/21/prefers-color-scheme-in-svg-favicons-for-dark-mode-icons/…but. This is still not working in Safari. Safari ignores user preference overrides inside the SVG styles. Is there an open issue for this on @jensimmons, or do you want me to make one?
-
I love the raspberry pi logo and it makes a tremendous favicon #favicon
-
I never gave the website favicon much thought but decided to look a bit more into it now and find it funny how Can I Use website mentions that it is a "complicated topic" in their footnotes:
-
I never gave the website favicon much thought but decided to look a bit more into it now and find it funny how Can I Use website mentions that it is a "complicated topic" in their footnotes:
-
#Development #Approaches
Adaptive SVG favicons · Favicons using the ‘prefers-color-scheme’ media query https://ilo.im/168quh_____
#Favicon #SVG #CSS #MediaQuery #Colors #ColorScheme #LightMode #DarkMode #WebDev #Frontend -
#Development #Approaches
Adaptive SVG favicons · Favicons using the ‘prefers-color-scheme’ media query https://ilo.im/168quh_____
#Favicon #SVG #CSS #MediaQuery #Colors #ColorScheme #LightMode #DarkMode #WebDev #Frontend -
Tracking users with favicons, even in incognito mode
https://github.com/jonasstrehle/supercookie
#HackerNews #Tracking #Users #Favicon #Incognito #Privacy #Supercookie
-
Tracking users with favicons, even in incognito mode
https://github.com/jonasstrehle/supercookie
#HackerNews #Tracking #Users #Favicon #Incognito #Privacy #Supercookie
-
𝗖𝗼𝗺𝗽𝗹𝗲𝘁𝗲 𝗴𝘂𝗶𝗱𝗲 𝗮𝗯𝗼𝘂𝘁 𝗳𝗮𝘃𝗶𝗰𝗼𝗻:
https://thewhale.cc/posts/complete-guide-about-favicon
Audrey Roy has written this cheat sheet favicon sizes/types on her GitHub account to help your website shine in society.
-
🆕 blog! “A Self-Hosted Favicon Proxy written in PHP”
In theory, you should be able to get the base favicon of any domain by calling /favicon.ico - but the reality is somewhat more complex than that. Plenty of sites use a wide variety of semi-standardised images which are usually only discoverable from the site's HTML.
There are several services which allow you to …
👀 Read more: https://shkspr.mobi/blog/2025/10/a-self-hosted-favicon-proxy-written-in-php/
⸻
#favicon #HowTo #HTML #php -
🆕 blog! “A Self-Hosted Favicon Proxy written in PHP”
In theory, you should be able to get the base favicon of any domain by calling /favicon.ico - but the reality is somewhat more complex than that. Plenty of sites use a wide variety of semi-standardised images which are usually only discoverable from the site's HTML.
There are several services which allow you to …
👀 Read more: https://shkspr.mobi/blog/2025/10/a-self-hosted-favicon-proxy-written-in-php/
⸻
#favicon #HowTo #HTML #php -
A Self-Hosted Favicon Proxy written in PHP
https://shkspr.mobi/blog/2025/10/a-self-hosted-favicon-proxy-written-in-php/
In theory, you should be able to get the base favicon of any domain by calling
/favicon.ico- but the reality is somewhat more complex than that. Plenty of sites use a wide variety of semi-standardised images which are usually only discoverable from the site's HTML.There are several services which allow you to get favicons based on a domain. But they all have their problems.
- Google
- Exposes your user's to Google's tracking.
- Relies on redirects.
- DuckDuckGo
- Not officially supported by DDG.
- Favicon.is
- No privacy policy whatsoever.
- Icons.horse
- Paid service.
- Only small size icons.
- Favicone
- No privacy policy.
- Only small size icons.
I want to show favicons next to specific links, but I don't want to expose my visitors to unnecessary tracking. How can I proxy these images so they are stored and served locally?
There are a few existing services. Some use Cloudflare workers or other cloud services, there are some local-first ones which are unmaintained. But nothing modern, self-hosted, and as easy to deploy as uploading a single PHP file.
So here's my attempt to make something which will preserve user privacy, be reasonably fast, and have moderately up-to-date icons, while remaining fast and efficient.
Table of Contents
- Getting the domain
- Getting the image
- Getting the structure right
- Preventing abuse
- Putting it all together
Getting the domain
Assuming the request comes in to
https://proxy.example.com/?domain=bbc.co.ukPHP has a handy
FILTER_VALIDATE_DOMAINfilter which will determine if the string is a domain.filter_var( $domain, FILTER_VALIDATE_DOMAIN, FILTER_FLAG_HOSTNAME );Dealing with IDNs
Some domains contain non-ASCII characters - for example https://莎士比亚.org/ - not all favicon services support International Domain Names.
Using the
idn_to_ascii()function, it is possible to get the Punycode domain.$domain = idn_to_ascii("莎士比亚.org");Getting the image
- Check if the icon has previously been downloaded.
- Rotate randomly between a few different Favicon services.
- Download the icon.
- Save it somewhere.
Getting the structure right
I know from my work on OpenBenches that storing tens of thousands of files in a single directory can be problematic. So I'll store the retrieved favicon in:
/tld/domain/subdomain/That will make it quick to see if an icon exists. I'll save the file with a filename based on the current timestamp. That will allow me to check if an icon is out of date, and will prevent people downloading the icons directly from me.
Preventing abuse
I don't want anyone but visitors to my site to be able to use this service. So I'll add a (weak) check to see if the request came from my domain.
$referer = parse_url( $_SERVER["HTTP_REFERER"], PHP_URL_HOST );if ( $referer == "shkspr.mobi") { …}Some browsers may not send referers for privacy reasons. So they won't see the favicons. But they probably wouldn't have seen the images loaded from a 3rd party service. So I'll serve a default image.
Putting it all together
You can grab the code from my personal git service.
- Google
-
A Self-Hosted Favicon Proxy written in PHP
https://shkspr.mobi/blog/2025/10/a-self-hosted-favicon-proxy-written-in-php/
In theory, you should be able to get the base favicon of any domain by calling
/favicon.ico- but the reality is somewhat more complex than that. Plenty of sites use a wide variety of semi-standardised images which are usually only discoverable from the site's HTML.There are several services which allow you to get favicons based on a domain. But they all have their problems.
- Google
- Exposes your user's to Google's tracking.
- Relies on redirects.
- DuckDuckGo
- Not officially supported by DDG.
- Favicon.is
- No privacy policy whatsoever.
- Icons.horse
- Paid service.
- Only small size icons.
- Favicone
- No privacy policy.
- Only small size icons.
I want to show favicons next to specific links, but I don't want to expose my visitors to unnecessary tracking. How can I proxy these images so they are stored and served locally?
There are a few existing services. Some use Cloudflare workers or other cloud services, there are some local-first ones which are unmaintained. But nothing modern, self-hosted, and as easy to deploy as uploading a single PHP file.
So here's my attempt to make something which will preserve user privacy, be reasonably fast, and have moderately up-to-date icons, while remaining fast and efficient.
Table of Contents
- Getting the domain
- Getting the image
- Getting the structure right
- Preventing abuse
- Putting it all together
Getting the domain
Assuming the request comes in to
https://proxy.example.com/?domain=bbc.co.ukPHP has a handy
FILTER_VALIDATE_DOMAINfilter which will determine if the string is a domain.filter_var( $domain, FILTER_VALIDATE_DOMAIN, FILTER_FLAG_HOSTNAME );Dealing with IDNs
Some domains contain non-ASCII characters - for example https://莎士比亚.org/ - not all favicon services support International Domain Names.
Using the
idn_to_ascii()function, it is possible to get the Punycode domain.$domain = idn_to_ascii("莎士比亚.org");Getting the image
- Check if the icon has previously been downloaded.
- Rotate randomly between a few different Favicon services.
- Download the icon.
- Save it somewhere.
Getting the structure right
I know from my work on OpenBenches that storing tens of thousands of files in a single directory can be problematic. So I'll store the retrieved favicon in:
/tld/domain/subdomain/That will make it quick to see if an icon exists. I'll save the file with a filename based on the current timestamp. That will allow me to check if an icon is out of date, and will prevent people downloading the icons directly from me.
Preventing abuse
I don't want anyone but visitors to my site to be able to use this service. So I'll add a (weak) check to see if the request came from my domain.
$referer = parse_url( $_SERVER["HTTP_REFERER"], PHP_URL_HOST );if ( $referer == "shkspr.mobi") { …}Some browsers may not send referers for privacy reasons. So they won't see the favicons. But they probably wouldn't have seen the images loaded from a 3rd party service. So I'll serve a default image.
Putting it all together
You can grab the code from my personal git service.
- Google
-
-
И снова #музыка
Многих иконок уже нет. #MTV свою сменила, не посчитав нужным сделать 16x16. Пришлось брать старую на #archiveOrg