109 lines
3.9 KiB
HTML
109 lines
3.9 KiB
HTML
<!DOCTYPE html>
|
||
<html lang="en-US">
|
||
<head>
|
||
<meta charset="utf-8"/>
|
||
<meta content="#0e1112" media="(prefers-color-scheme: dark)" name="theme-color"/>
|
||
<meta content="#566B78" media="(prefers-color-scheme: light)" name="theme-color"/>
|
||
<meta content="Michael Housh" name="author"/>
|
||
<meta content="Mhoush" name="apple-mobile-web-app-title"/>
|
||
<meta content="initial-scale=1.0, width=device-width" name="viewport"/>
|
||
<meta content="telephone=no" name="format-detection"/>
|
||
<meta content="True" name="HandheldFriendly"/>
|
||
<meta content="320" name="MobileOptimized"/>
|
||
<meta content="Mhoush" name="og:site_name"/>
|
||
<meta content="hvac, developer, swift, home-performance, design" name="keywords"/>
|
||
<title>
|
||
mhoush: 404
|
||
</title>
|
||
<link href="/static/favicon.ico" rel="shortcut icon"/>
|
||
<link href="/static/output.css" rel="stylesheet"/>
|
||
<link href="/static/style.css" rel="stylesheet"/>
|
||
<link href="/articles/feed.xml" rel="alternate" title="mhoush" type="application/rss+xml"/>
|
||
</head>
|
||
<body class="bg-page text-white pb-5 font-avenir notFound">
|
||
<header class="bg-nav text-gray py-4 text-base/6 lg:fixed w-full lg:h-[62px]">
|
||
<nav class="container flex gap-x-5 lg:gap-x-y items-center">
|
||
<ul class="flex flex-wrap gap-x-2 lg:gap-x-5">
|
||
<li>
|
||
<a class href="/">Home</a>
|
||
</li>
|
||
<li>
|
||
<a class href="/articles/">Articles</a>
|
||
</li>
|
||
<li>
|
||
<a class href="/about/">About</a>
|
||
</li>
|
||
</ul>
|
||
</nav>
|
||
</header>
|
||
<div class="container pt-12 lg:pt-28">
|
||
<article class="prose">
|
||
<h2>Oops!</h2>
|
||
<p>Your page was not found.</p>
|
||
<p>Looking for one of the articles?</p>
|
||
<ul>
|
||
<li>
|
||
<a href="/articles/2025/vapor-htmx-todo-app/">Vapor + HTMX</a>
|
||
</li>
|
||
<li>
|
||
<a href="/articles/2024/free-as-in-freedom/">Free As In Freedom</a>
|
||
</li>
|
||
<li>
|
||
<a href="/articles/2024/pgp-encryption-introduction/">PGP Encryption Introduction</a>
|
||
</li>
|
||
<li>
|
||
<a href="/articles/2024/unvr-as-nas/">UNVR as NAS</a>
|
||
</li>
|
||
<li>
|
||
<a href="/articles/2024/elevating-hvac/">Elevating HVAC: A Skilled Trade Beyond Labor</a>
|
||
</li>
|
||
<li>
|
||
<a href="/articles/2023/most-important-job/">Most Important Job</a>
|
||
</li>
|
||
<li>
|
||
<a href="/articles/2023/cancel-this/">Cancel This</a>
|
||
</li>
|
||
<li>
|
||
<a href="/articles/2023/hope/">Hope</a>
|
||
</li>
|
||
<li>
|
||
<a href="/articles/2023/heat-recovery-chiller/">Heat Recovery Chiller</a>
|
||
</li>
|
||
<li>
|
||
<a href="/articles/2023/you-should-learn-markdown/">You Should Learn Markdown</a>
|
||
</li>
|
||
</ul>
|
||
<div>
|
||
<a href="/articles/">› See all articles</a>
|
||
</div>
|
||
</article>
|
||
</div>
|
||
<div class="site-footer container text-gray gray-links border-t border-light text-center pt-6 mt-8 text-sm">
|
||
<p>
|
||
Copyright © Michael Housh 2023-2025.
|
||
</p>
|
||
<p>
|
||
Built in Swift using
|
||
<a href="https://github.com/loopwerk/Saga" rel="nofollow" target="_blank">Saga</a>
|
||
(<a href="https://github.com/m-housh/mhoush.com" rel="nofollow" target="_blank">source</a>).
|
||
</p>
|
||
<p>
|
||
<a href="http://localhost:3000/articles/feed.xml" rel="nofollow" target="_blank">RSS</a>
|
||
|
|
||
<a href="https://github.com/m-housh" rel="nofollow" target="_blank">Github</a>
|
||
|
|
||
<a href="https://www.youtube.com/channel/UCb58SeURd5bObfTiL0KoliA" rel="nofollow" target="_blank">Youtube</a>
|
||
|
|
||
<a href="https://www.facebook.com/michael.housh" rel="nofollow" target="_blank">Facebook</a>
|
||
|
|
||
<a href="mailto:michael@mhoush.com" rel="nofollow">Email</a>
|
||
</p>
|
||
<script src="https://cdnjs.cloudflare.com/ajax/libs/prism/1.29.0/components/prism-core.min.js">
|
||
</script>
|
||
<script src="https://cdnjs.cloudflare.com/ajax/libs/prism/1.29.0/plugins/keep-markup/prism-keep-markup.min.js">
|
||
</script>
|
||
<script src="https://cdnjs.cloudflare.com/ajax/libs/prism/1.29.0/plugins/autoloader/prism-autoloader.min.js">
|
||
</script>
|
||
</div>
|
||
</body>
|
||
</html> |