2024-10-23 15:33:19 +03:00

74 lines
2.5 KiB
HTML

<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<!-- Open Graph metadata -->
<meta property="og:title" content="Lindholm Software">
<meta property="og:description" content="Ville Lindholm is a freelance software developer.">
<meta property="og:image" content="https://lindholm.dev/images/portrait.jpeg">
<meta property="og:url" content="https://lindholm.dev">
<meta property="og:type" content="website">
<!-- fonts -->
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Caprasimo&display=swap" rel="stylesheet">
<link href="https://fonts.cdnfonts.com/css/junicode-2" rel="stylesheet">
<!-- icons -->
<link href='https://unpkg.com/boxicons@2.1.4/css/boxicons.min.css' rel='stylesheet'>
<!-- pico helps with some basic CSS styling -->
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@picocss/pico@2/css/pico.css">
<!-- the rest is ours -->
<link rel="stylesheet" href="/style.css">
<title>{{ .Site.Title }}</title>
<!-- a naive email obfuscator to counteract scrapers -->
<script>
window.addEventListener('DOMContentLoaded', function () {
document.querySelectorAll('span#lindholm-email').forEach(function (span) {
span.innerHTML = "Rendering email...";
span.setAttribute('aria-busy', 'true');
});
setTimeout(function () {
let first = 'ville';
let at = '@';
let last = 'lindholm';
document.querySelectorAll('span#lindholm-email').forEach(function (span) {
span.innerHTML = `${first}${at}${last}.dev`;
span.removeAttribute('aria-busy');
});
}, 2000);
});
</script>
</head>
<body>
<header class="container noPrint">
<nav>
<ul>
<li>
<h4><a href="/" class="contrast">{{ .Site.Title }}</a></h4>
</li>
</ul>
<ul>
<li><a href="/cv">
<h5>CV</h5>
</a></li>
<li><a href="/blog">
<h5>Blog</h5>
</a></li>
</ul>
</nav>
</header>
<main class="container">
{{ block "main" . }}{{ end }}
</main>
</body>
</html>