Files

103 lines
4.0 KiB
HTML

{{ define "home" }}
<!DOCTYPE html>
<html lang="en">
<head>
<title>ATCR - Distributed Container Registry</title>
<!-- Open Graph -->
<meta property="og:title" content="ATCR - Distributed Container Registry">
<meta property="og:description" content="Push and pull Docker images on the AT Protocol. Same Docker, decentralized.">
<meta property="og:image" content="https://{{ .RegistryURL }}/og/home">
<meta property="og:image:width" content="1200">
<meta property="og:image:height" content="630">
<meta property="og:type" content="website">
<meta property="og:url" content="https://{{ .RegistryURL }}">
<meta property="og:site_name" content="ATCR">
<!-- Twitter Card (used by Discord) -->
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:title" content="ATCR - Distributed Container Registry">
<meta name="twitter:description" content="Push and pull Docker images on the AT Protocol. Same Docker, decentralized.">
<meta name="twitter:image" content="https://{{ .RegistryURL }}/og/home">
{{ template "head" . }}
</head>
<body>
{{ template "nav" . }}
{{ if not .User }}
<!-- Hero Section for Non-Logged-In Users -->
<section class="hero-section">
<div class="hero-content">
<h1 class="hero-title">ship containers on the open web.</h1>
<p class="hero-subtitle">
Push and pull Docker images on the AT Protocol.<br>
Browse public registries or control your data.
</p>
<div class="hero-terminal">
<div class="terminal-header">
<span class="terminal-dot"></span>
<span class="terminal-dot"></span>
<span class="terminal-dot"></span>
</div>
<pre class="terminal-content"><span class="terminal-prompt">$</span> docker login atcr.io
<span class="terminal-prompt">$</span> docker push atcr.io/you/app
<span class="terminal-comment"># same docker, decentralized</span></pre>
</div>
<div class="hero-actions">
<a href="/auth/oauth/login?return_to=/" class="btn-hero-primary">Get Started</a>
<a href="/install" class="btn-hero-secondary">Learn More</a>
</div>
</div>
<!-- Benefit Cards -->
<div class="hero-benefits">
<div class="benefit-card">
<div class="benefit-icon"><i data-lucide="ship"></i></div>
<h3>Works with Docker</h3>
<p>Use docker push & pull. No new tools to learn.</p>
</div>
<div class="benefit-card">
<div class="benefit-icon"><i data-lucide="anchor"></i></div>
<h3>Your Data</h3>
<p>Join shared holds or captain your own storage.</p>
</div>
<div class="benefit-card">
<div class="benefit-icon"><i data-lucide="compass"></i></div>
<h3>Discover Images</h3>
<p>Browse and star public container registries.</p>
</div>
</div>
</section>
{{ end }}
<main class="container">
<div class="home-page">
<!-- Featured Repositories Section -->
{{ if .FeaturedRepos }}
<div class="featured-section">
<h1>Featured</h1>
<div class="featured-grid">
{{ range .FeaturedRepos }}
{{ template "repo-card" . }}
{{ end }}
</div>
</div>
{{ end }}
<!-- Recent Pushes Section -->
<h1>What's New</h1>
<div id="push-list" hx-get="/api/recent-pushes" hx-trigger="load" hx-swap="innerHTML">
<!-- Initial loading state -->
<div class="loading">Loading recent pushes...</div>
</div>
</div>
</main>
<!-- Modal container for HTMX -->
<div id="modal"></div>
</body>
</html>
{{ end }}