tangled
alpha
login
or
join now
danielmorrisey.com
/
website
1
fork
atom
madebydanny.uk written in html, css, and a lot of JavaScript I don't understand
madeydanny.uk
html
css
javascript
1
fork
atom
overview
issues
pulls
pipelines
added new thing
Daniel Morrisey
1 month ago
c947bf3b
a1137126
+210
-32
6 changed files
expand all
collapse all
unified
split
404.html
about.html
css
index.css
index.html
js
social-links.js
ls.html
+19
-3
404.html
···
1
1
-
error 404, page not found
2
2
-
<br>
3
3
-
site hosted on <a href="https://wisp.place">wisp.place</a>
1
1
+
<!DOCTYPE html>
2
2
+
<html lang="en">
3
3
+
<head>
4
4
+
<meta charset="UTF-8">
5
5
+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
6
6
+
<title>Error 404 Page not Foound - madebydanny.uk</title>
7
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
8
+
<meta name="description" id="meta-description" content="Whoops! The page you are looking for does not exist.">
9
9
+
<link rel="stylesheet" href="/css/index.css">
10
10
+
</head>
11
11
+
<body>
12
12
+
<h1>Error 404 Page not Found</h1>
13
13
+
<p>Whoops! The page you are looking for does not exist.</p>
14
14
+
<p>The Page you requested was not found, Cloudflare Pages returned <i>"error 404"</i></p>
15
15
+
<hr>
16
16
+
<p>© 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
17
+
<script src="/js/script.js"></script>
18
18
+
</body>
19
19
+
</html>
+44
about.html
···
1
1
+
<!DOCTYPE html>
2
2
+
<html lang="en">
3
3
+
<head>
4
4
+
<meta charset="UTF-8">
5
5
+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
6
6
+
<title>About Daniel Morrisey - madebydanny.uk</title>
7
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
8
+
<meta name="description" id="meta-description" content="Posting everything into the endless jet stream of posts">
9
9
+
<meta property="og:title" content="About Daniel Morrisey - madebydanny.uk">
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
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>About Me</h1>
18
18
+
<hr>
19
19
+
<p><b>Social Links:</b></p>
20
20
+
<div id="social-links"></div>
21
21
+
<hr>
22
22
+
<div id="site-footer"></div>
23
23
+
<script src="/js/social-links.js"></script>
24
24
+
<script src="/js/script.js"></script>
25
25
+
<!-- Default Statcounter code for Made by Danny UK
26
26
+
https://madebydanny.uk -->
27
27
+
<script type="text/javascript">
28
28
+
var sc_project=13180172;
29
29
+
var sc_invisible=0;
30
30
+
var sc_security="a4ed014f";
31
31
+
var scJsHost = "https://";
32
32
+
document.write("<sc"+"ript type='text/javascript' src='" +
33
33
+
scJsHost+
34
34
+
"statcounter.com/counter/counter.js'></"+"script>");
35
35
+
</script>
36
36
+
<noscript><div class="statcounter"><a title="Web Analytics"
37
37
+
href="https://statcounter.com/" target="_blank"><img
38
38
+
class="statcounter"
39
39
+
src="https://c.statcounter.com/13180172/0/a4ed014f/0/"
40
40
+
alt="Web Analytics"
41
41
+
referrerPolicy="no-referrer-when-downgrade"></a></div></noscript>
42
42
+
<!-- End of Statcounter Code -->
43
43
+
</body>
44
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
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
130
+
transition: all 0.2s ease;
131
131
+
}
132
132
+
133
133
+
.social-btn:hover {
134
134
+
background: var(--btn-bg);
135
135
+
border-color: var(--btn-border);
136
136
+
transform: translateY(-2px);
137
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
163
-
164
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
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
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
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
19
-
<p>I like to listen to Music <i>(Mainly Tate McRae and Taylor Swift)</i>, and post on Bluesky</p>
20
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
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
19
+
<div id="visitor-counter">Loading visitor info...</div>
20
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
45
-
<div class="social-row" role="list">
46
46
-
<a class="social-btn btn-bluesky" role="listitem" href="/followonbsky.html?did=did:plc:l37td5yhxl2irrzrgvei4qay" aria-label="Bluesky">
47
47
-
<i class="fa-brands fa-bluesky"></i>
48
48
-
<span class="label">Bluesky</span>
49
49
-
</a>
50
50
-
51
51
-
<a class="social-btn btn-tangled" role="listitem" href="https://tangled.org/madebydannyuk" target="_blank" rel="noopener noreferrer" aria-label="Tangled">
52
52
-
<i class="fa-brands fa-git-alt"></i>
53
53
-
<span class="label">Tangled</span>
54
54
-
</a>
55
55
-
56
56
-
<a class="social-btn btn-threads" role="listitem" href="https://threads.net/@madebydanny.uk" target="_blank" rel="noopener noreferrer" aria-label="Threads">
57
57
-
<i class="fa-brands fa-threads"></i>
58
58
-
<span class="label">Threads</span>
59
59
-
</a>
60
60
-
61
61
-
<a class="social-btn btn-mastodon" role="listitem" href="https://mastodon.social/@danielmorrisey" target="_blank" rel="noopener noreferrer" aria-label="Mastodon">
62
62
-
<i class="fa-brands fa-mastodon"></i>
63
63
-
<span class="label">Mastodon</span>
64
64
-
</a>
65
65
-
</div>
45
45
+
<div id="social-links"></div>
66
46
<hr>
67
67
-
<p>© 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
47
+
<div id="site-footer"></div>
68
48
<script src="/js/script.js"></script>
49
49
+
<script src="/js/social-links.js"></script>
50
50
+
<script src="https://visit-counter.madebydanny.uk"></script>
51
51
+
<!-- Default Statcounter code for Made by Danny UK
52
52
+
https://madebydanny.uk -->
53
53
+
<script type="text/javascript">
54
54
+
var sc_project=13180172;
55
55
+
var sc_invisible=0;
56
56
+
var sc_security="a4ed014f";
57
57
+
var scJsHost = "https://";
58
58
+
document.write("<sc"+"ript type='text/javascript' src='" +
59
59
+
scJsHost+
60
60
+
"statcounter.com/counter/counter.js'></"+"script>");
61
61
+
</script>
62
62
+
<noscript><div class="statcounter"><a title="Web Analytics"
63
63
+
href="https://statcounter.com/" target="_blank"><img
64
64
+
class="statcounter"
65
65
+
src="https://c.statcounter.com/13180172/0/a4ed014f/0/"
66
66
+
alt="Web Analytics"
67
67
+
referrerPolicy="no-referrer-when-downgrade"></a></div></noscript>
68
68
+
<!-- End of Statcounter Code -->
69
69
</body>
70
70
</html>
+112
js/social-links.js
···
1
1
+
// Social Links Component
2
2
+
const SOCIAL_LINKS = [
3
3
+
{
4
4
+
id: 'bluesky',
5
5
+
label: 'Bluesky',
6
6
+
icon: 'fa-bluesky',
7
7
+
href: 'https://aturi.to/did:plc:l37td5yhxl2irrzrgvei4qay',
8
8
+
target: '_blank'
9
9
+
},
10
10
+
{
11
11
+
id: 'tangled',
12
12
+
label: 'Tangled',
13
13
+
icon: 'fa-git-alt',
14
14
+
href: 'https://tangled.org/did:plc:l37td5yhxl2irrzrgvei4qay',
15
15
+
target: '_blank'
16
16
+
},
17
17
+
{
18
18
+
id: 'threads',
19
19
+
label: 'Threads',
20
20
+
icon: 'fa-threads',
21
21
+
href: 'https://threads.net/@madebydanny.uk',
22
22
+
target: '_blank'
23
23
+
},
24
24
+
{
25
25
+
id: 'mastodon',
26
26
+
label: 'Mastodon',
27
27
+
icon: 'fa-mastodon',
28
28
+
href: 'https://mastodon.social/@danielmorrisey',
29
29
+
target: '_blank'
30
30
+
}
31
31
+
];
32
32
+
33
33
+
const FOOTER_CONFIG = {
34
34
+
copyright: '2024-26 Daniel Morrisey',
35
35
+
createdBy: '@madebydanny.uk',
36
36
+
createdByUrl: 'https://aturi.to/did:plc:l37td5yhxl2irrzrgvei4qay',
37
37
+
hostedOn: 'wisp.place',
38
38
+
hostedOnUrl: 'https://wisp.place',
39
39
+
homeUrl: '/'
40
40
+
};
41
41
+
42
42
+
function renderSocialLinks(containerId) {
43
43
+
const container = document.getElementById(containerId);
44
44
+
if (!container) {
45
45
+
console.warn(`Social links container with id "${containerId}" not found`);
46
46
+
return;
47
47
+
}
48
48
+
49
49
+
container.innerHTML = '';
50
50
+
container.setAttribute('role', 'list');
51
51
+
container.classList.add('social-row');
52
52
+
53
53
+
SOCIAL_LINKS.forEach(link => {
54
54
+
const a = document.createElement('a');
55
55
+
a.className = `social-btn btn-${link.id}`;
56
56
+
a.href = link.href;
57
57
+
a.setAttribute('role', 'listitem');
58
58
+
a.setAttribute('aria-label', link.label);
59
59
+
60
60
+
if (link.target === '_blank') {
61
61
+
a.target = '_blank';
62
62
+
a.rel = 'noopener noreferrer';
63
63
+
}
64
64
+
65
65
+
const icon = document.createElement('i');
66
66
+
icon.className = `fa-brands ${link.icon}`;
67
67
+
68
68
+
const label = document.createElement('span');
69
69
+
label.className = 'label';
70
70
+
label.textContent = link.label;
71
71
+
72
72
+
a.appendChild(icon);
73
73
+
a.appendChild(label);
74
74
+
container.appendChild(a);
75
75
+
});
76
76
+
}
77
77
+
78
78
+
function renderFooter(containerId) {
79
79
+
const container = document.getElementById(containerId);
80
80
+
if (!container) {
81
81
+
console.warn(`Footer container with id "${containerId}" not found`);
82
82
+
return;
83
83
+
}
84
84
+
85
85
+
container.innerHTML = '';
86
86
+
87
87
+
// Back to home button (only show if not on home page)
88
88
+
if (window.location.pathname !== '/') {
89
89
+
const backLink = document.createElement('p');
90
90
+
backLink.style.marginBottom = '12px';
91
91
+
backLink.innerHTML = `<a href="${FOOTER_CONFIG.homeUrl}">← Back to home</a>`;
92
92
+
container.appendChild(backLink);
93
93
+
}
94
94
+
95
95
+
const p = document.createElement('p');
96
96
+
p.innerHTML = `© ${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
97
+
98
98
+
container.appendChild(p);
99
99
+
}
100
100
+
101
101
+
// Auto-render if element with id "social-links" exists
102
102
+
document.addEventListener('DOMContentLoaded', () => {
103
103
+
const socialLinksContainer = document.getElementById('social-links');
104
104
+
if (socialLinksContainer) {
105
105
+
renderSocialLinks('social-links');
106
106
+
}
107
107
+
108
108
+
const footerContainer = document.getElementById('site-footer');
109
109
+
if (footerContainer) {
110
110
+
renderFooter('site-footer');
111
111
+
}
112
112
+
});
+1
ls.html
···
1
1
+
comming soon