You'll be glad to know you it's not like that anymore; you just need one Apple-specific icon now [1]:
<link rel="icon" href="/favicon.ico" sizes="32x32">
<link rel="icon" href="/icon.svg" type="image/svg+xml">
<link rel="apple-touch-icon" href="/apple-touch-icon.png"><!-- 180×180 -->
<link rel="manifest" href="/manifest.webmanifest">
[1]: https://evilmartians.com/chronicles/how-to-favicon-in-2021-s... <link rel="mask-icon" href="/favicon.svg" color="#990000">
If you use something like Vite, you can also auto-generate all favicon/homes screen icon creation from a single source image.Also, nothing's really stopping most developers from just scaling it naively to those tiny sizes, in fact it's what commonly happens.
I agree we should keep support for custom icons for each size, and it's probably a best practice, but shouldn't be a _requirement_ anymore.
Whereas Safari only runs on macOS + iOS, which in-turn only runs on Apple hardware, and all Apple hardware today is going to run at ~140dpi or above - so pixel-perfect art just isn't required - and if someone plugs a (relatively) low-res TV into a Mac then the OS is going to downsample everything down anyway, and (most) users don't seem to care about that.
Pixeling editing is a <4% improvement.
A large text editor icon might have a pad with a pencil, squiggles on the page, rings binding the pages at the top, etc. But if you scale that down, it might lose legibility.
For good icon design, you don’t want the same thing but smaller, you want fewer, simpler elements. So you might drop the rings at the top, then as you get smaller you might drop the squiggles on the page, and if you go small enough, you might want to change to just having the pencil.
Most people don’t bother with this. They just shrink things down. If that’s what you do, then SVG solves that problem. But that’s not great icon design. Great icon design needs to adapt to smaller sizes, not just grow and shrink.
https://web.dev/articles/building/an-adaptive-favicon
Unfortunately, I tried the demo and even though it’s supposed to work in Chrome, it didn’t for me. Nor with Safari. Have you gotten it working with favicons anywhere?
I also wish we could style <select> lists. Like adding flags to <option> elements.
No mention of CSS page transitions or scroll-driven animations which can also remove some boilerplate JS.