From 1f3fe00ce84f2655c4b8b55fd29cd1561cd74108 Mon Sep 17 00:00:00 2001 From: Ricardo Date: Wed, 28 Jan 2026 15:08:01 +0100 Subject: [PATCH] fix: multiple frontend issues - Add Alpine.js Collapse plugin for x-collapse directive - Create favicon.svg and favicon.ico with proper linking - Fix default-avatar references (use existing .svg instead of .png) - Add favicon.ico to passthrough copy Co-Authored-By: Claude Opus 4.5 --- _includes/components/webmentions.njk | 6 +++--- _includes/layouts/base.njk | 5 +++++ eleventy.config.js | 1 + favicon.ico | Bin 0 -> 15086 bytes images/favicon.svg | 4 ++++ interactions.njk | 4 ++-- js/webmentions.js | 4 ++-- 7 files changed, 17 insertions(+), 7 deletions(-) create mode 100644 favicon.ico create mode 100644 images/favicon.svg diff --git a/_includes/components/webmentions.njk b/_includes/components/webmentions.njk index 013423f..f203321 100644 --- a/_includes/components/webmentions.njk +++ b/_includes/components/webmentions.njk @@ -35,7 +35,7 @@ target="_blank" rel="noopener"> {{ like.author.name }} {{ repost.author.name }} {{ reply.author.name }} {% endif %} + {# Favicon #} + + + + diff --git a/eleventy.config.js b/eleventy.config.js index 18bdfd9..a6c5238 100644 --- a/eleventy.config.js +++ b/eleventy.config.js @@ -122,6 +122,7 @@ export default function (eleventyConfig) { eleventyConfig.addPassthroughCopy("css"); eleventyConfig.addPassthroughCopy("images"); eleventyConfig.addPassthroughCopy("js"); + eleventyConfig.addPassthroughCopy("favicon.ico"); // Watch for content changes eleventyConfig.addWatchTarget("./content/"); diff --git a/favicon.ico b/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..9274a8c52fd01f1cf1df5fe7817731ef27f92791 GIT binary patch literal 15086 zcmeHNNlz3(6fUD@!^Qg?H1WtuabXdcgL+XCjk_1)8sm12J9^xt^`aU7!QzZ9IO&4?zfUm9NjWHSvLd_=JyMd}28AnKj`Oaf7XApgV{I-UjP zXB6q{&^}DJE1KWXdi!^Jt62+1atEZSEFVN*MD*GceZCc)~!wRluM6;)@% zy@)>%qVTY&-=%uw|8MRAXQTz3;TE0?7L@;|{=ah&obe8D#yY@6J}kZeQ#jv}&9U7{ zoO|=J8(ml49HDisgs%O-K;eEVPJtm(aTxJ8PO)6aDWvi#Jyw+%tJ)^!@t%ktgL({V z8&J;%DDIdGmHLq6P9ld3;<%Kiyx6w^Wu%xxdNY`oo#JC;And{3r zZb5Nmcf6BfKdJ_fW#b;Td_EsyZY6uUTnX0w)8M@ygzWDh3=j9!DK2F+RQfg*S39aE z`8R^ybAe-MK^)(k9tS&fmfL1fnV8FOWzK;&H5P~u-j^3(b)V7l|L=aAvme&~wBq{L z^2;CR+J5BgJl7}8C;hAJ|9j2@&AGwlO^qrwf7vAe%tRnQwq*?LZUxp4w0^@in$>lR z&p~E?eFuX3rk~ID@%cI`lRIYOlqQ~1UxE8x`@nf}1>Dzt3}+w>=B>TFwvP4snfA_z zzhEDj&D+7eR^_8hU16JD+ekb)jRapBc z{*LD!DBeJGfHQQJL20vPhkqu5_r*hS>aa58T^{`p#vnL`(zq2&1f@AIh41qIe+g~p t_!Zg`t>*}2S4zaMB9>3-5SplzUlHh{;2^i@C&`~m#?Spxt7 literal 0 HcmV?d00001 diff --git a/images/favicon.svg b/images/favicon.svg new file mode 100644 index 0000000..c15703d --- /dev/null +++ b/images/favicon.svg @@ -0,0 +1,4 @@ + + + i + diff --git a/interactions.njk b/interactions.njk index bcc2e1d..4abfc19 100644 --- a/interactions.njk +++ b/interactions.njk @@ -198,11 +198,11 @@ permalink: /interactions/ {# Author avatar #} diff --git a/js/webmentions.js b/js/webmentions.js index b9ab360..5381dfe 100644 --- a/js/webmentions.js +++ b/js/webmentions.js @@ -100,7 +100,7 @@ link.dataset.new = 'true'; const img = document.createElement('img'); - img.src = author.photo || '/images/default-avatar.png'; + img.src = author.photo || '/images/default-avatar.svg'; img.alt = author.name || 'Anonymous'; img.className = 'w-8 h-8 rounded-full ring-2 ring-primary-500'; img.loading = 'lazy'; @@ -148,7 +148,7 @@ avatarLink.rel = 'noopener'; const avatarImg = document.createElement('img'); - avatarImg.src = author.photo || '/images/default-avatar.png'; + avatarImg.src = author.photo || '/images/default-avatar.svg'; avatarImg.alt = author.name || 'Anonymous'; avatarImg.className = 'w-10 h-10 rounded-full'; avatarImg.loading = 'lazy';