danielrosehill's picture
Add badge to footer linking to danielrosehill.com
d58051a
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Claude Agent Picker Pattern 🎯</title>
<link rel="stylesheet" href="style.css">
<script src="https://cdn.jsdelivr.net/npm/marked/marked.min.js"></script>
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;600;700;800&family=JetBrains+Mono:wght@400;600&display=swap" rel="stylesheet">
</head>
<body>
<div class="hero-gradient"></div>
<div class="container">
<div id="content"></div>
<footer class="footer">
<p>πŸ’‘ A late-night idea by <a href="https://danielrosehill.com" target="_blank">Daniel Rosehill</a></p>
<p class="footer-date">October 31, 2025</p>
<a href="https://danielrosehill.com" target="_blank">
<img src="badge.png" alt="Daniel Rosehill" style="width: 480px; max-width: 100%; margin-top: 20px;">
</a>
</footer>
</div>
<script>
// Fetch and render the markdown
fetch('source/README.md')
.then(response => response.text())
.then(text => {
// Configure marked
marked.setOptions({
breaks: true,
gfm: true
});
// Convert markdown to HTML
const html = marked.parse(text);
// Update image paths to point to source/images/
const updatedHtml = html.replace(/src="images\//g, 'src="source/images/');
document.getElementById('content').innerHTML = updatedHtml;
// Add some animation to images after loading
setTimeout(() => {
document.querySelectorAll('img').forEach((img, index) => {
img.style.opacity = '0';
img.style.transform = 'translateY(20px)';
setTimeout(() => {
img.style.transition = 'all 0.6s ease-out';
img.style.opacity = '1';
img.style.transform = 'translateY(0)';
}, index * 100);
});
}, 100);
})
.catch(error => {
console.error('Error loading markdown:', error);
document.getElementById('content').innerHTML = '<p class="error">Error loading content. Please try again.</p>';
});
</script>
</body>
</html>