My personal website vittoriogioda.com
blog portfolio personal-website

chore: add Tangled link

+136
+6
404.html
··· 141 141 </path> 142 142 </svg> 143 143 </a> 144 + <a href="https://tangled.org/vittoriogioda.com/" target="_blank" rel="noopener noreferrer me" 145 + title="Tangled"> 146 + <svg width="25" height="25" color="#fff" viewBox="0 0 25 25" xmlns="http://www.w3.org/2000/svg"> 147 + <path class="dolly" fill="currentColor" style="stroke-width:.111183" d="M16.775 24.987c-.785-.006-1.384-.235-2.034-.631-.931-.49-1.643-1.314-2.152-2.222-.808 1.003-1.888 1.61-3.097 1.955-.515.15-1.416.3-2.91-.24-2.155-.724-3.724-2.966-3.546-5.25-.032-.946.313-1.875.802-2.674-1.305-.7-2.37-1.876-2.777-3.319-.248-.789-.237-1.64-.146-2.451.327-1.916 1.765-3.582 3.615-4.182.739-1.683 2.35-2.938 4.176-3.194a5.54 5.54 0 0 1 3.528.702c1.546-1.714 4.238-2.22 6.294-1.168 1.568.749 2.69 2.311 2.962 4.015 1.492.598 2.749 1.817 3.242 3.365.33.958.34 2.013.127 2.997-.381 1.535-1.465 2.842-2.868 3.557.004.273.902 2.243.751 3.73-.032 1.858-1.211 3.62-2.846 4.475-.954.556-2.084.546-3.12.535m-4.47-5.35c1.323-.147 2.19-1.3 2.863-2.338.318-.473.561-1.002.803-1.506.313.287.578.828 1.074.957.522.162 1.134.03 1.453-.444.612-1.14.31-2.516-.046-3.698-.22-.679-.507-1.375-1.054-1.856.117-.824-.371-1.66-1.065-2.091-.591.471-1.49.468-2.061-.036-1.093 1.115-2.095 1.078-3.062.195-.218-.199-.633 1.211-2.089.412-.836.701-1.485 1.376-2.06 2.347-.558 1.046-1.143 1.976-1.194 3.112-.024.665.495 1.36 1.199 1.307.703.063 1.181-.63 1.713-.917.08.927.17 1.923.483 2.829.36 1.17 1.626 1.915 2.825 1.745z" transform="translate(-.43 -.878)"/> 148 + </svg> 149 + </a> 144 150 <a href="https://bsky.app/profile/vittoriogioda.com" target="_blank" rel="noopener noreferrer me" 145 151 title="Bluesky"> 146 152 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor" stroke="none" stroke-width="2"
+6
categories/index.html
··· 144 144 </path> 145 145 </svg> 146 146 </a> 147 + <a href="https://tangled.org/vittoriogioda.com/" target="_blank" rel="noopener noreferrer me" 148 + title="Tangled"> 149 + <svg width="25" height="25" color="#fff" viewBox="0 0 25 25" xmlns="http://www.w3.org/2000/svg"> 150 + <path class="dolly" fill="currentColor" style="stroke-width:.111183" d="M16.775 24.987c-.785-.006-1.384-.235-2.034-.631-.931-.49-1.643-1.314-2.152-2.222-.808 1.003-1.888 1.61-3.097 1.955-.515.15-1.416.3-2.91-.24-2.155-.724-3.724-2.966-3.546-5.25-.032-.946.313-1.875.802-2.674-1.305-.7-2.37-1.876-2.777-3.319-.248-.789-.237-1.64-.146-2.451.327-1.916 1.765-3.582 3.615-4.182.739-1.683 2.35-2.938 4.176-3.194a5.54 5.54 0 0 1 3.528.702c1.546-1.714 4.238-2.22 6.294-1.168 1.568.749 2.69 2.311 2.962 4.015 1.492.598 2.749 1.817 3.242 3.365.33.958.34 2.013.127 2.997-.381 1.535-1.465 2.842-2.868 3.557.004.273.902 2.243.751 3.73-.032 1.858-1.211 3.62-2.846 4.475-.954.556-2.084.546-3.12.535m-4.47-5.35c1.323-.147 2.19-1.3 2.863-2.338.318-.473.561-1.002.803-1.506.313.287.578.828 1.074.957.522.162 1.134.03 1.453-.444.612-1.14.31-2.516-.046-3.698-.22-.679-.507-1.375-1.054-1.856.117-.824-.371-1.66-1.065-2.091-.591.471-1.49.468-2.061-.036-1.093 1.115-2.095 1.078-3.062.195-.218-.199-.633 1.211-2.089.412-.836.701-1.485 1.376-2.06 2.347-.558 1.046-1.143 1.976-1.194 3.112-.024.665.495 1.36 1.199 1.307.703.063 1.181-.63 1.713-.917.08.927.17 1.923.483 2.829.36 1.17 1.626 1.915 2.825 1.745z" transform="translate(-.43 -.878)"/> 151 + </svg> 152 + </a> 147 153 <a href="https://bsky.app/profile/vittoriogioda.com" target="_blank" rel="noopener noreferrer me" 148 154 title="Bluesky"> 149 155 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor" stroke="none" stroke-width="2"
+6
index.html
··· 181 181 </path> 182 182 </svg> 183 183 </a> 184 + <a href="https://tangled.org/vittoriogioda.com/" target="_blank" rel="noopener noreferrer me" 185 + title="Tangled"> 186 + <svg width="25" height="25" color="#fff" viewBox="0 0 25 25" xmlns="http://www.w3.org/2000/svg"> 187 + <path class="dolly" fill="currentColor" style="stroke-width:.111183" d="M16.775 24.987c-.785-.006-1.384-.235-2.034-.631-.931-.49-1.643-1.314-2.152-2.222-.808 1.003-1.888 1.61-3.097 1.955-.515.15-1.416.3-2.91-.24-2.155-.724-3.724-2.966-3.546-5.25-.032-.946.313-1.875.802-2.674-1.305-.7-2.37-1.876-2.777-3.319-.248-.789-.237-1.64-.146-2.451.327-1.916 1.765-3.582 3.615-4.182.739-1.683 2.35-2.938 4.176-3.194a5.54 5.54 0 0 1 3.528.702c1.546-1.714 4.238-2.22 6.294-1.168 1.568.749 2.69 2.311 2.962 4.015 1.492.598 2.749 1.817 3.242 3.365.33.958.34 2.013.127 2.997-.381 1.535-1.465 2.842-2.868 3.557.004.273.902 2.243.751 3.73-.032 1.858-1.211 3.62-2.846 4.475-.954.556-2.084.546-3.12.535m-4.47-5.35c1.323-.147 2.19-1.3 2.863-2.338.318-.473.561-1.002.803-1.506.313.287.578.828 1.074.957.522.162 1.134.03 1.453-.444.612-1.14.31-2.516-.046-3.698-.22-.679-.507-1.375-1.054-1.856.117-.824-.371-1.66-1.065-2.091-.591.471-1.49.468-2.061-.036-1.093 1.115-2.095 1.078-3.062.195-.218-.199-.633 1.211-2.089.412-.836.701-1.485 1.376-2.06 2.347-.558 1.046-1.143 1.976-1.194 3.112-.024.665.495 1.36 1.199 1.307.703.063 1.181-.63 1.713-.917.08.927.17 1.923.483 2.829.36 1.17 1.626 1.915 2.825 1.745z" transform="translate(-.43 -.878)"/> 188 + </svg> 189 + </a> 184 190 <a href="https://bsky.app/profile/vittoriogioda.com" target="_blank" rel="noopener noreferrer me" 185 191 title="Bluesky"> 186 192 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor" stroke="none" stroke-width="2"
+19
js/main.js
··· 1 + 'use strict'; 2 + 3 + ; 4 + window.addEventListener('load', () => { 5 + const gttButton = document.getElementById("totop"); 6 + if (!gttButton) return; 7 + window.onscroll = () => { 8 + if ( 9 + document.body.scrollTop > 300 || 10 + document.documentElement.scrollTop > 300 11 + ) { 12 + gttButton.style.visibility = "visible"; 13 + gttButton.style.opacity = "1"; 14 + } else { 15 + gttButton.style.visibility = "hidden"; 16 + gttButton.style.opacity = "0"; 17 + } 18 + }; 19 + });
+75
js/theme.js
··· 1 + (() => { 2 + "use strict"; 3 + const LS_THEME_KEY = "theme"; 4 + const THEMES = { 5 + LIGHT: "light", 6 + DARK: "dark", 7 + AUTO: "auto", 8 + }; 9 + 10 + const body = document.body; 11 + const config = body.getAttribute("data-theme"); 12 + 13 + const getThemeState = () => { 14 + const lsState = localStorage.getItem(LS_THEME_KEY); 15 + if (lsState) return lsState; 16 + 17 + let state; 18 + switch (config) { 19 + case THEMES.DARK: 20 + state = THEMES.DARK; 21 + break; 22 + case THEMES.LIGHT: 23 + state = THEMES.LIGHT; 24 + break; 25 + case THEMES.AUTO: 26 + default: 27 + state = window.matchMedia("(prefers-color-scheme: dark)") 28 + .matches 29 + ? THEMES.DARK 30 + : THEMES.LIGHT; 31 + break; 32 + } 33 + return state; 34 + }; 35 + 36 + const initTheme = (state) => { 37 + if (state === THEMES.DARK) { 38 + document.documentElement.classList.add(THEMES.DARK); 39 + document.documentElement.classList.remove(THEMES.LIGHT); 40 + } else if (state === THEMES.LIGHT) { 41 + document.documentElement.classList.remove(THEMES.DARK); 42 + document.documentElement.classList.add(THEMES.LIGHT); 43 + } 44 + }; 45 + 46 + // init theme ASAP, then do the rest. 47 + initTheme(getThemeState()); 48 + requestAnimationFrame(() => body.classList.remove("notransition")) 49 + const toggleTheme = () => { 50 + const state = getThemeState(); 51 + if (state === THEMES.DARK) { 52 + localStorage.setItem(LS_THEME_KEY, THEMES.LIGHT); 53 + initTheme(THEMES.LIGHT); 54 + } else if (state === THEMES.LIGHT) { 55 + localStorage.setItem(LS_THEME_KEY, THEMES.DARK); 56 + initTheme(THEMES.DARK); 57 + } 58 + }; 59 + 60 + window.addEventListener("DOMContentLoaded", () => { 61 + // Theme switch 62 + const lamp = document.getElementById("mode"); 63 + 64 + lamp.addEventListener("click", () => toggleTheme()); 65 + 66 + // Blur the content when the menu is open 67 + const cbox = document.getElementById("menu-trigger"); 68 + 69 + cbox.addEventListener("change", function () { 70 + const area = document.querySelector(".wrapper"); 71 + if (this.checked) return area.classList.add("blurry"); 72 + area.classList.remove("blurry"); 73 + }); 74 + }); 75 + })();
+6
pages/index.html
··· 144 144 </path> 145 145 </svg> 146 146 </a> 147 + <a href="https://tangled.org/vittoriogioda.com/" target="_blank" rel="noopener noreferrer me" 148 + title="Tangled"> 149 + <svg width="25" height="25" color="#fff" viewBox="0 0 25 25" xmlns="http://www.w3.org/2000/svg"> 150 + <path class="dolly" fill="currentColor" style="stroke-width:.111183" d="M16.775 24.987c-.785-.006-1.384-.235-2.034-.631-.931-.49-1.643-1.314-2.152-2.222-.808 1.003-1.888 1.61-3.097 1.955-.515.15-1.416.3-2.91-.24-2.155-.724-3.724-2.966-3.546-5.25-.032-.946.313-1.875.802-2.674-1.305-.7-2.37-1.876-2.777-3.319-.248-.789-.237-1.64-.146-2.451.327-1.916 1.765-3.582 3.615-4.182.739-1.683 2.35-2.938 4.176-3.194a5.54 5.54 0 0 1 3.528.702c1.546-1.714 4.238-2.22 6.294-1.168 1.568.749 2.69 2.311 2.962 4.015 1.492.598 2.749 1.817 3.242 3.365.33.958.34 2.013.127 2.997-.381 1.535-1.465 2.842-2.868 3.557.004.273.902 2.243.751 3.73-.032 1.858-1.211 3.62-2.846 4.475-.954.556-2.084.546-3.12.535m-4.47-5.35c1.323-.147 2.19-1.3 2.863-2.338.318-.473.561-1.002.803-1.506.313.287.578.828 1.074.957.522.162 1.134.03 1.453-.444.612-1.14.31-2.516-.046-3.698-.22-.679-.507-1.375-1.054-1.856.117-.824-.371-1.66-1.065-2.091-.591.471-1.49.468-2.061-.036-1.093 1.115-2.095 1.078-3.062.195-.218-.199-.633 1.211-2.089.412-.836.701-1.485 1.376-2.06 2.347-.558 1.046-1.143 1.976-1.194 3.112-.024.665.495 1.36 1.199 1.307.703.063 1.181-.63 1.713-.917.08.927.17 1.923.483 2.829.36 1.17 1.626 1.915 2.825 1.745z" transform="translate(-.43 -.878)"/> 151 + </svg> 152 + </a> 147 153 <a href="https://bsky.app/profile/vittoriogioda.com" target="_blank" rel="noopener noreferrer me" 148 154 title="Bluesky"> 149 155 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor" stroke="none" stroke-width="2"
+6
posts/index.html
··· 220 220 </path> 221 221 </svg> 222 222 </a> 223 + <a href="https://tangled.org/vittoriogioda.com/" target="_blank" rel="noopener noreferrer me" 224 + title="Tangled"> 225 + <svg width="25" height="25" color="#fff" viewBox="0 0 25 25" xmlns="http://www.w3.org/2000/svg"> 226 + <path class="dolly" fill="currentColor" style="stroke-width:.111183" d="M16.775 24.987c-.785-.006-1.384-.235-2.034-.631-.931-.49-1.643-1.314-2.152-2.222-.808 1.003-1.888 1.61-3.097 1.955-.515.15-1.416.3-2.91-.24-2.155-.724-3.724-2.966-3.546-5.25-.032-.946.313-1.875.802-2.674-1.305-.7-2.37-1.876-2.777-3.319-.248-.789-.237-1.64-.146-2.451.327-1.916 1.765-3.582 3.615-4.182.739-1.683 2.35-2.938 4.176-3.194a5.54 5.54 0 0 1 3.528.702c1.546-1.714 4.238-2.22 6.294-1.168 1.568.749 2.69 2.311 2.962 4.015 1.492.598 2.749 1.817 3.242 3.365.33.958.34 2.013.127 2.997-.381 1.535-1.465 2.842-2.868 3.557.004.273.902 2.243.751 3.73-.032 1.858-1.211 3.62-2.846 4.475-.954.556-2.084.546-3.12.535m-4.47-5.35c1.323-.147 2.19-1.3 2.863-2.338.318-.473.561-1.002.803-1.506.313.287.578.828 1.074.957.522.162 1.134.03 1.453-.444.612-1.14.31-2.516-.046-3.698-.22-.679-.507-1.375-1.054-1.856.117-.824-.371-1.66-1.065-2.091-.591.471-1.49.468-2.061-.036-1.093 1.115-2.095 1.078-3.062.195-.218-.199-.633 1.211-2.089.412-.836.701-1.485 1.376-2.06 2.347-.558 1.046-1.143 1.976-1.194 3.112-.024.665.495 1.36 1.199 1.307.703.063 1.181-.63 1.713-.917.08.927.17 1.923.483 2.829.36 1.17 1.626 1.915 2.825 1.745z" transform="translate(-.43 -.878)"/> 227 + </svg> 228 + </a> 223 229 <a href="https://bsky.app/profile/vittoriogioda.com" target="_blank" rel="noopener noreferrer me" 224 230 title="Bluesky"> 225 231 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor" stroke="none" stroke-width="2"
+6
posts/test-post/index.html
··· 210 210 </path> 211 211 </svg> 212 212 </a> 213 + <a href="https://tangled.org/vittoriogioda.com/" target="_blank" rel="noopener noreferrer me" 214 + title="Tangled"> 215 + <svg width="25" height="25" color="#fff" viewBox="0 0 25 25" xmlns="http://www.w3.org/2000/svg"> 216 + <path class="dolly" fill="currentColor" style="stroke-width:.111183" d="M16.775 24.987c-.785-.006-1.384-.235-2.034-.631-.931-.49-1.643-1.314-2.152-2.222-.808 1.003-1.888 1.61-3.097 1.955-.515.15-1.416.3-2.91-.24-2.155-.724-3.724-2.966-3.546-5.25-.032-.946.313-1.875.802-2.674-1.305-.7-2.37-1.876-2.777-3.319-.248-.789-.237-1.64-.146-2.451.327-1.916 1.765-3.582 3.615-4.182.739-1.683 2.35-2.938 4.176-3.194a5.54 5.54 0 0 1 3.528.702c1.546-1.714 4.238-2.22 6.294-1.168 1.568.749 2.69 2.311 2.962 4.015 1.492.598 2.749 1.817 3.242 3.365.33.958.34 2.013.127 2.997-.381 1.535-1.465 2.842-2.868 3.557.004.273.902 2.243.751 3.73-.032 1.858-1.211 3.62-2.846 4.475-.954.556-2.084.546-3.12.535m-4.47-5.35c1.323-.147 2.19-1.3 2.863-2.338.318-.473.561-1.002.803-1.506.313.287.578.828 1.074.957.522.162 1.134.03 1.453-.444.612-1.14.31-2.516-.046-3.698-.22-.679-.507-1.375-1.054-1.856.117-.824-.371-1.66-1.065-2.091-.591.471-1.49.468-2.061-.036-1.093 1.115-2.095 1.078-3.062.195-.218-.199-.633 1.211-2.089.412-.836.701-1.485 1.376-2.06 2.347-.558 1.046-1.143 1.976-1.194 3.112-.024.665.495 1.36 1.199 1.307.703.063 1.181-.63 1.713-.917.08.927.17 1.923.483 2.829.36 1.17 1.626 1.915 2.825 1.745z" transform="translate(-.43 -.878)"/> 217 + </svg> 218 + </a> 213 219 <a href="https://bsky.app/profile/vittoriogioda.com" target="_blank" rel="noopener noreferrer me" 214 220 title="Bluesky"> 215 221 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor" stroke="none" stroke-width="2"
+6
tags/index.html
··· 144 144 </path> 145 145 </svg> 146 146 </a> 147 + <a href="https://tangled.org/vittoriogioda.com/" target="_blank" rel="noopener noreferrer me" 148 + title="Tangled"> 149 + <svg width="25" height="25" color="#fff" viewBox="0 0 25 25" xmlns="http://www.w3.org/2000/svg"> 150 + <path class="dolly" fill="currentColor" style="stroke-width:.111183" d="M16.775 24.987c-.785-.006-1.384-.235-2.034-.631-.931-.49-1.643-1.314-2.152-2.222-.808 1.003-1.888 1.61-3.097 1.955-.515.15-1.416.3-2.91-.24-2.155-.724-3.724-2.966-3.546-5.25-.032-.946.313-1.875.802-2.674-1.305-.7-2.37-1.876-2.777-3.319-.248-.789-.237-1.64-.146-2.451.327-1.916 1.765-3.582 3.615-4.182.739-1.683 2.35-2.938 4.176-3.194a5.54 5.54 0 0 1 3.528.702c1.546-1.714 4.238-2.22 6.294-1.168 1.568.749 2.69 2.311 2.962 4.015 1.492.598 2.749 1.817 3.242 3.365.33.958.34 2.013.127 2.997-.381 1.535-1.465 2.842-2.868 3.557.004.273.902 2.243.751 3.73-.032 1.858-1.211 3.62-2.846 4.475-.954.556-2.084.546-3.12.535m-4.47-5.35c1.323-.147 2.19-1.3 2.863-2.338.318-.473.561-1.002.803-1.506.313.287.578.828 1.074.957.522.162 1.134.03 1.453-.444.612-1.14.31-2.516-.046-3.698-.22-.679-.507-1.375-1.054-1.856.117-.824-.371-1.66-1.065-2.091-.591.471-1.49.468-2.061-.036-1.093 1.115-2.095 1.078-3.062.195-.218-.199-.633 1.211-2.089.412-.836.701-1.485 1.376-2.06 2.347-.558 1.046-1.143 1.976-1.194 3.112-.024.665.495 1.36 1.199 1.307.703.063 1.181-.63 1.713-.917.08.927.17 1.923.483 2.829.36 1.17 1.626 1.915 2.825 1.745z" transform="translate(-.43 -.878)"/> 151 + </svg> 152 + </a> 147 153 <a href="https://bsky.app/profile/vittoriogioda.com" target="_blank" rel="noopener noreferrer me" 148 154 title="Bluesky"> 149 155 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor" stroke="none" stroke-width="2"