diff --git a/frontend/site.js b/frontend/site.js index 04909cd..141231f 100644 --- a/frontend/site.js +++ b/frontend/site.js @@ -70,6 +70,7 @@ function createTab(entry) { img.alt = ""; img.loading = "lazy"; tab.appendChild(img); + loadedIcons.push(entry.icon); } const title = document.createElement("span"); @@ -153,6 +154,20 @@ async function loadMore() { } } +// Rotating site favicon — picks a random loaded icon every second +const faviconLink = document.createElement("link"); +faviconLink.rel = "icon"; +faviconLink.type = "image/png"; +document.head.appendChild(faviconLink); + +const loadedIcons = []; + +setInterval(() => { + if (loadedIcons.length === 0) return; + const icon = loadedIcons[Math.floor(Math.random() * loadedIcons.length)]; + faviconLink.href = `data:image/png;base64,${icon}`; +}, 1000); + // Infinite scroll let loading = false; window.addEventListener("scroll", async () => {