madebydanny.uk written in html, css, and a lot of JavaScript I don't understand madeydanny.uk
html css javascript

added new thing

+210 -32
+19 -3
404.html
··· 1 - error 404, page not found 2 - <br> 3 - site hosted on <a href="https://wisp.place">wisp.place</a> 1 + <!DOCTYPE html> 2 + <html lang="en"> 3 + <head> 4 + <meta charset="UTF-8"> 5 + <meta name="viewport" content="width=device-width, initial-scale=1.0"> 6 + <title>Error 404 Page not Foound - madebydanny.uk</title> 7 + <script src="https://kit.fontawesome.com/0ca27f8db1.js" crossorigin="anonymous"></script> <link rel="icon" id="favicon" href="https://imrs.madebydanny.uk/?url=https://cloudflareisawesome.madebydanny.uk/madebydanny.uk/seo/favicon.webp"> 8 + <meta name="description" id="meta-description" content="Whoops! The page you are looking for does not exist."> 9 + <link rel="stylesheet" href="/css/index.css"> 10 + </head> 11 + <body> 12 + <h1>Error 404 Page not Found</h1> 13 + <p>Whoops! The page you are looking for does not exist.</p> 14 + <p>The Page you requested was not found, Cloudflare Pages returned <i>"error 404"</i></p> 15 + <hr> 16 + <p>&copy; 2024-26 Daniel Morrisey by <a href="/followonbsky.html?did=did:plc:l37td5yhxl2irrzrgvei4qay">@madebydanny.uk</a> - hosted on <a href="https://wisp.place" target="_blank">wisp.place</a></p> 17 + <script src="/js/script.js"></script> 18 + </body> 19 + </html>
+44
about.html
··· 1 + <!DOCTYPE html> 2 + <html lang="en"> 3 + <head> 4 + <meta charset="UTF-8"> 5 + <meta name="viewport" content="width=device-width, initial-scale=1.0"> 6 + <title>About Daniel Morrisey - madebydanny.uk</title> 7 + <script src="https://kit.fontawesome.com/0ca27f8db1.js" crossorigin="anonymous"></script> <link rel="icon" id="favicon" href="https://imrs.madebydanny.uk/?url=https://cloudflareisawesome.madebydanny.uk/madebydanny.uk/seo/favicon.webp"> 8 + <meta name="description" id="meta-description" content="Posting everything into the endless jet stream of posts"> 9 + <meta property="og:title" content="About Daniel Morrisey - madebydanny.uk"> 10 + <meta property="og:description" id="og-description" content="Posting everything into the endless jet stream of posts"> 11 + <meta property="og:type" content="website"> 12 + <meta property="og:url" content="https://madebydanny.uk/"> 13 + <meta property="og:image" id="og-image" content="https://imrs.madebydanny.uk?url=https://cloudflareisawesome.madebydanny.uk/madebydanny.uk/seo/og-img.png"> 14 + <link rel="stylesheet" href="/css/index.css"> 15 + </head> 16 + <body> 17 + <h1>About Me</h1> 18 + <hr> 19 + <p><b>Social Links:</b></p> 20 + <div id="social-links"></div> 21 + <hr> 22 + <div id="site-footer"></div> 23 + <script src="/js/social-links.js"></script> 24 + <script src="/js/script.js"></script> 25 + <!-- Default Statcounter code for Made by Danny UK 26 + https://madebydanny.uk --> 27 + <script type="text/javascript"> 28 + var sc_project=13180172; 29 + var sc_invisible=0; 30 + var sc_security="a4ed014f"; 31 + var scJsHost = "https://"; 32 + document.write("<sc"+"ript type='text/javascript' src='" + 33 + scJsHost+ 34 + "statcounter.com/counter/counter.js'></"+"script>"); 35 + </script> 36 + <noscript><div class="statcounter"><a title="Web Analytics" 37 + href="https://statcounter.com/" target="_blank"><img 38 + class="statcounter" 39 + src="https://c.statcounter.com/13180172/0/a4ed014f/0/" 40 + alt="Web Analytics" 41 + referrerPolicy="no-referrer-when-downgrade"></a></div></noscript> 42 + <!-- End of Statcounter Code --> 43 + </body> 44 + </html>
+8 -3
css/index.css
··· 125 125 text-decoration: none; 126 126 border: 1px solid var(--bsky-border); 127 127 font-size: 0.95rem; 128 - /* hover/transition effects removed to make buttons static */ 129 128 flex: 0 0 auto; /* don't stretch; allow pushing */ 130 129 min-width: 44px; 130 + transition: all 0.2s ease; 131 + } 132 + 133 + .social-btn:hover { 134 + background: var(--btn-bg); 135 + border-color: var(--btn-border); 136 + transform: translateY(-2px); 137 + box-shadow: 0 4px 12px rgba(0,0,0,0.3); 131 138 } 132 139 133 140 .social-btn i { ··· 160 167 .btn-tangled { --btn-bg: #000000; --btn-border: rgba(107,114,128,0.4); } 161 168 .btn-threads { --btn-bg: #000000; --btn-border: rgba(17,24,39,0.4); } 162 169 .btn-mastodon { --btn-bg: #6364FF; --btn-border: rgba(48,136,212,0.4); } 163 - 164 - /* brand hover rules removed to disable hover color changes */ 165 170 166 171 /* Screen-reader only text (keep for accessibility) */ 167 172 .sr-only {
+26 -26
index.html
··· 10 10 <meta property="og:description" id="og-description" content="Posting everything into the endless jet stream of posts"> 11 11 <meta property="og:type" content="website"> 12 12 <meta property="og:url" content="https://madebydanny.uk/"> 13 - <meta property="og:image" id="og-image" content="https://atimg.madebydanny.uk/?image=https://selfhosted.social%2Fxrpc%2Fcom.atproto.sync.getBlob%3Fdid%3Ddid%3Aplc%3Al37td5yhxl2irrzrgvei4qay%26cid%3Dbafkreidnipwcd2mzx2lcjpdxfu535dtm5nyyoo3i3drdzseqfon6muo7ya"> 13 + <meta property="og:image" id="og-image" content="https://imrs.madebydanny.uk?url=https://cloudflareisawesome.madebydanny.uk/madebydanny.uk/seo/og-img.png"> 14 14 <link rel="stylesheet" href="/css/index.css"> 15 15 </head> 16 16 <body> 17 17 <h1>Hi, I'm Daniel Morrisey </h1> 18 - <p><a href="https://guestbook.madebydanny.uk">Sign the Guestbook</a> ~ <a href="https://pdsls.dev/at://did:plc:l37td5yhxl2irrzrgvei4qay/fm.teal.alpha.feed.play">Recently played Music</a></p> 19 - <p>I like to listen to Music <i>(Mainly Tate McRae and Taylor Swift)</i>, and post on Bluesky</p> 20 - <p>I'm also on <a>Threads</a> and <a>Mastodon</a>, but active on <a>Bluesky</a>, becuase it's the best social media platform</p> 18 + <p><a href="https://guestbook.madebydanny.uk">Sign the Guestbook</a> ~ <a href="https://pdsls.dev/at://did:plc:l37td5yhxl2irrzrgvei4qay/fm.teal.alpha.feed.play">Recently played Music</a> ~ <a href="/about.html">About Me</a><br><a href="/ls.html">View All Pages</a></a></p> 19 + <div id="visitor-counter">Loading visitor info...</div> 20 + <p>I like to listen to Music <i>(Mainly Tate McRae and Taylor Swift)</i>, and post on Bluesky<br>I'm also on <a href="https://threads.net/@madebydanny.uk" target="_blank">Threads</a> and <a href="ttps://mastodon.social/@danielmorrisey" target="_blank">Mastodon</a>, but active on <a href="https://aturi.to/did:plc:l37td5yhxl2irrzrgvei4qay" target="_blank">Bluesky</a>, becuase it's the best social media platform</p> 21 21 <div id="music-status-card"> 22 22 <div class="bsky-header"> 23 23 <span>Recently played</span> ··· 42 42 </div> 43 43 <hr> 44 44 <p><b>Social Links:</b></p> 45 - <div class="social-row" role="list"> 46 - <a class="social-btn btn-bluesky" role="listitem" href="/followonbsky.html?did=did:plc:l37td5yhxl2irrzrgvei4qay" aria-label="Bluesky"> 47 - <i class="fa-brands fa-bluesky"></i> 48 - <span class="label">Bluesky</span> 49 - </a> 50 - 51 - <a class="social-btn btn-tangled" role="listitem" href="https://tangled.org/madebydannyuk" target="_blank" rel="noopener noreferrer" aria-label="Tangled"> 52 - <i class="fa-brands fa-git-alt"></i> 53 - <span class="label">Tangled</span> 54 - </a> 55 - 56 - <a class="social-btn btn-threads" role="listitem" href="https://threads.net/@madebydanny.uk" target="_blank" rel="noopener noreferrer" aria-label="Threads"> 57 - <i class="fa-brands fa-threads"></i> 58 - <span class="label">Threads</span> 59 - </a> 60 - 61 - <a class="social-btn btn-mastodon" role="listitem" href="https://mastodon.social/@danielmorrisey" target="_blank" rel="noopener noreferrer" aria-label="Mastodon"> 62 - <i class="fa-brands fa-mastodon"></i> 63 - <span class="label">Mastodon</span> 64 - </a> 65 - </div> 45 + <div id="social-links"></div> 66 46 <hr> 67 - <p>&copy; 2024-26 Daniel Morrisey by <a href="/followonbsky.html?did=did:plc:l37td5yhxl2irrzrgvei4qay">@madebydanny.uk</a> - hosted on <a href="https://wisp.place" target="_blank">wisp.place</a></p> 47 + <div id="site-footer"></div> 68 48 <script src="/js/script.js"></script> 49 + <script src="/js/social-links.js"></script> 50 + <script src="https://visit-counter.madebydanny.uk"></script> 51 + <!-- Default Statcounter code for Made by Danny UK 52 + https://madebydanny.uk --> 53 + <script type="text/javascript"> 54 + var sc_project=13180172; 55 + var sc_invisible=0; 56 + var sc_security="a4ed014f"; 57 + var scJsHost = "https://"; 58 + document.write("<sc"+"ript type='text/javascript' src='" + 59 + scJsHost+ 60 + "statcounter.com/counter/counter.js'></"+"script>"); 61 + </script> 62 + <noscript><div class="statcounter"><a title="Web Analytics" 63 + href="https://statcounter.com/" target="_blank"><img 64 + class="statcounter" 65 + src="https://c.statcounter.com/13180172/0/a4ed014f/0/" 66 + alt="Web Analytics" 67 + referrerPolicy="no-referrer-when-downgrade"></a></div></noscript> 68 + <!-- End of Statcounter Code --> 69 69 </body> 70 70 </html>
+112
js/social-links.js
··· 1 + // Social Links Component 2 + const SOCIAL_LINKS = [ 3 + { 4 + id: 'bluesky', 5 + label: 'Bluesky', 6 + icon: 'fa-bluesky', 7 + href: 'https://aturi.to/did:plc:l37td5yhxl2irrzrgvei4qay', 8 + target: '_blank' 9 + }, 10 + { 11 + id: 'tangled', 12 + label: 'Tangled', 13 + icon: 'fa-git-alt', 14 + href: 'https://tangled.org/did:plc:l37td5yhxl2irrzrgvei4qay', 15 + target: '_blank' 16 + }, 17 + { 18 + id: 'threads', 19 + label: 'Threads', 20 + icon: 'fa-threads', 21 + href: 'https://threads.net/@madebydanny.uk', 22 + target: '_blank' 23 + }, 24 + { 25 + id: 'mastodon', 26 + label: 'Mastodon', 27 + icon: 'fa-mastodon', 28 + href: 'https://mastodon.social/@danielmorrisey', 29 + target: '_blank' 30 + } 31 + ]; 32 + 33 + const FOOTER_CONFIG = { 34 + copyright: '2024-26 Daniel Morrisey', 35 + createdBy: '@madebydanny.uk', 36 + createdByUrl: 'https://aturi.to/did:plc:l37td5yhxl2irrzrgvei4qay', 37 + hostedOn: 'wisp.place', 38 + hostedOnUrl: 'https://wisp.place', 39 + homeUrl: '/' 40 + }; 41 + 42 + function renderSocialLinks(containerId) { 43 + const container = document.getElementById(containerId); 44 + if (!container) { 45 + console.warn(`Social links container with id "${containerId}" not found`); 46 + return; 47 + } 48 + 49 + container.innerHTML = ''; 50 + container.setAttribute('role', 'list'); 51 + container.classList.add('social-row'); 52 + 53 + SOCIAL_LINKS.forEach(link => { 54 + const a = document.createElement('a'); 55 + a.className = `social-btn btn-${link.id}`; 56 + a.href = link.href; 57 + a.setAttribute('role', 'listitem'); 58 + a.setAttribute('aria-label', link.label); 59 + 60 + if (link.target === '_blank') { 61 + a.target = '_blank'; 62 + a.rel = 'noopener noreferrer'; 63 + } 64 + 65 + const icon = document.createElement('i'); 66 + icon.className = `fa-brands ${link.icon}`; 67 + 68 + const label = document.createElement('span'); 69 + label.className = 'label'; 70 + label.textContent = link.label; 71 + 72 + a.appendChild(icon); 73 + a.appendChild(label); 74 + container.appendChild(a); 75 + }); 76 + } 77 + 78 + function renderFooter(containerId) { 79 + const container = document.getElementById(containerId); 80 + if (!container) { 81 + console.warn(`Footer container with id "${containerId}" not found`); 82 + return; 83 + } 84 + 85 + container.innerHTML = ''; 86 + 87 + // Back to home button (only show if not on home page) 88 + if (window.location.pathname !== '/') { 89 + const backLink = document.createElement('p'); 90 + backLink.style.marginBottom = '12px'; 91 + backLink.innerHTML = `<a href="${FOOTER_CONFIG.homeUrl}">← Back to home</a>`; 92 + container.appendChild(backLink); 93 + } 94 + 95 + const p = document.createElement('p'); 96 + p.innerHTML = `&copy; ${FOOTER_CONFIG.copyright} by <a href="${FOOTER_CONFIG.createdByUrl}">${FOOTER_CONFIG.createdBy}</a> - hosted on <a href="${FOOTER_CONFIG.hostedOnUrl}" target="_blank">${FOOTER_CONFIG.hostedOn}</a>`; 97 + 98 + container.appendChild(p); 99 + } 100 + 101 + // Auto-render if element with id "social-links" exists 102 + document.addEventListener('DOMContentLoaded', () => { 103 + const socialLinksContainer = document.getElementById('social-links'); 104 + if (socialLinksContainer) { 105 + renderSocialLinks('social-links'); 106 + } 107 + 108 + const footerContainer = document.getElementById('site-footer'); 109 + if (footerContainer) { 110 + renderFooter('site-footer'); 111 + } 112 + });
+1
ls.html
··· 1 + comming soon