zachery.lol/routes/projects/index.html

156 lines
3.9 KiB
HTML

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Projects</title>
<style>
*,
*::before,
*::after {
box-sizing: border-box;
}
body {
font-family: system-ui, -apple-system, sans-serif;
margin: 0;
padding: 0;
min-height: 100vh;
background: #060a10;
color: rgba(255, 255, 255, 0.75);
}
#fractal-canvas {
image-rendering: auto;
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 0;
}
.content-overlay {
position: relative;
z-index: 1;
min-height: 100vh;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
padding: 2rem 1rem;
}
.glass-card {
background: rgba(10, 14, 20, 0.55);
backdrop-filter: blur(16px);
-webkit-backdrop-filter: blur(16px);
border: 1px solid rgba(255, 255, 255, 0.08);
border-radius: 16px;
padding: 2.5rem 3rem;
max-width: 760px;
line-height: 1.6;
}
.glass-card h1 {
color: #fff;
margin: 0 0 1.5rem 0;
font-weight: 300;
font-size: 1.8rem;
letter-spacing: 0.01em;
}
.project-list {
list-style: none;
padding: 0;
margin: 0;
}
.project-card {
border-top: 1px solid rgba(255, 255, 255, 0.08);
padding: 1.25rem 0;
}
.project-card:first-child {
border-top: 0;
padding-top: 0;
}
.project-card:last-child {
padding-bottom: 0;
}
.project-card h2 {
color: rgba(255, 255, 255, 0.92);
margin: 0 0 0.4rem 0;
font-weight: 500;
font-size: 1.1rem;
}
.project-card h2 a {
color: inherit;
text-decoration-color: rgba(255, 255, 255, 0.25);
text-underline-offset: 0.18em;
transition: color 250ms ease, text-decoration-color 250ms ease;
}
.project-card h2 a:hover {
color: #fff;
text-decoration-color: rgba(255, 255, 255, 0.7);
}
.project-card p {
margin: 0;
}
.back-link {
margin-top: 2rem;
}
.back-link a {
text-decoration: none;
color: rgba(255, 255, 255, 0.4);
font-size: 0.8rem;
letter-spacing: 0.04em;
transition: color 250ms ease;
}
.back-link a:hover {
color: rgba(255, 255, 255, 0.7);
}
</style>
<link rel="preload" href="/routes/root/dist-strips.bin?v=1" as="fetch" crossorigin />
<script defer src="/routes/root/fractal-gl.js?v=13"></script>
</head>
<body>
<canvas id="fractal-canvas"></canvas>
<main class="content-overlay">
<article class="glass-card">
<h1>Projects</h1>
<section class="project-list" aria-label="Project list">
<article class="project-card">
<h2><a href="/projects/swactor">swactor</a></h2>
<p>Toolkit for orchestrating somewhat-unreliable heterogeneous GPU nodes over WAN links.</p>
</article>
<article class="project-card">
<h2><a href="/projects/airfrans-neural-cfd-surrogate">AirfRANS / neural CFD surrogate</a></h2>
<p>Machine learning as simulation: neural CFD surrogates, model scaling, and solver-grounded validation.</p>
</article>
<article class="project-card">
<h2><a href="/projects/cstat-yoke">cstat and yoke</a></h2>
<p>Code as data: statistical structure, LLM coding behavior, and agent harnesses.</p>
</article>
</section>
</article>
<nav class="back-link">
<a href="/">back to home</a>
</nav>
</main>
<!-- fractal background loaded via deferred <script> in <head> -->
</body>
</html>