site: dawn.gg-style landing at root + port /skin/* for TG bot
- serve new launcher landing site (zern.cc root -> launcher server 1582)
- static assets mounted at /css /js /img
- port GET/HEAD /skin/{filename} from old site with identical headers
- exempt /skin/* + site assets from rate-limit and cache middleware
- Caddy: root domains -> 1582, old site preserved at legacy.zernmc.*
This commit is contained in:
@@ -0,0 +1,173 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>Zern — Awaken from the cold</title>
|
||||
<meta name="description" content="Zern — a custom Minecraft launcher. Forge, NeoForge, Fabric. Download and play on ZernMC.">
|
||||
<link rel="icon" type="image/svg+xml" href="/img/zernmc.svg">
|
||||
<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=Onest:wght@300;400;500;600;700;800;900&display=swap" rel="stylesheet">
|
||||
<link rel="stylesheet" href="/css/style.css">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<nav class="nav" id="nav">
|
||||
<div class="nav-inner">
|
||||
<a class="nav-brand" href="#top">
|
||||
<img src="/img/zernmc.svg" alt="Zern" width="34" height="34">
|
||||
<span>Zern</span>
|
||||
</a>
|
||||
<ul class="nav-links">
|
||||
<li><a href="#features">Features</a></li>
|
||||
<li><a href="#download">Download</a></li>
|
||||
<li><a href="#news">News</a></li>
|
||||
</ul>
|
||||
<a class="nav-cta" href="#download">Play now</a>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<header class="hero" id="top">
|
||||
<div class="hero-grid" aria-hidden="true"></div>
|
||||
<div class="hero-glow" aria-hidden="true"></div>
|
||||
|
||||
<div class="hero-diamond hero-diamond--1" aria-hidden="true"></div>
|
||||
<div class="hero-diamond hero-diamond--2" aria-hidden="true"></div>
|
||||
<div class="hero-diamond hero-diamond--3" aria-hidden="true"></div>
|
||||
|
||||
<div class="hero-inner" data-parallax="0.15">
|
||||
<p class="hero-kicker">CUSTOM MINECRAFT LAUNCHER</p>
|
||||
<h1 class="hero-title">Awaken from <br><span class="hero-title-accent">the cold.</span></h1>
|
||||
<p class="hero-sub">Zern brings your favourite modpacks to life. One launcher, every loader, no hassle — built for the ZernMC server and beyond.</p>
|
||||
<div class="hero-actions">
|
||||
<a class="btn btn-primary" href="#download">
|
||||
<svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M12 3v12"/><path d="m7 10 5 5 5-5"/><path d="M4 21h16"/></svg>
|
||||
Download launcher
|
||||
</a>
|
||||
<a class="btn btn-ghost" href="#features">Explore</a>
|
||||
</div>
|
||||
<p class="hero-meta">v<span id="hero-version">—</span> · <span id="hero-size">—</span> · Windows</p>
|
||||
</div>
|
||||
|
||||
<div class="scroll-hint" data-parallax="0.3">
|
||||
<span>Scroll to explore</span>
|
||||
<div class="scroll-hint-line"><i></i></div>
|
||||
</div>
|
||||
</header>
|
||||
|
||||
<main>
|
||||
|
||||
<section class="section features" id="features">
|
||||
<div class="section-head">
|
||||
<span class="section-index">01 / 05</span>
|
||||
<h2 class="section-title">Everything <span class="accent">you need.</span></h2>
|
||||
<p class="section-sub">A launcher that does the heavy lifting, so you can just play.</p>
|
||||
</div>
|
||||
|
||||
<div class="features-grid">
|
||||
<article class="feature-card">
|
||||
<span class="feature-num">01</span>
|
||||
<div class="feature-icon" aria-hidden="true">
|
||||
<svg width="22" height="22" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><path d="M13 2 3 14h9l-1 8 10-12h-9l1-8z"/></svg>
|
||||
</div>
|
||||
<h3>Forge, NeoForge, Fabric</h3>
|
||||
<p>Every major mod loader handled automatically. Libraries are prefetched and verified, so installs just work — even on slow networks.</p>
|
||||
</article>
|
||||
|
||||
<article class="feature-card">
|
||||
<span class="feature-num">02</span>
|
||||
<div class="feature-icon" aria-hidden="true">
|
||||
<svg width="22" height="22" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><rect x="2" y="3" width="20" height="14" rx="2"/><path d="M8 21h8"/><path d="M12 17v4"/></svg>
|
||||
</div>
|
||||
<h3>Dark, fast, native UI</h3>
|
||||
<p>A lightweight JavaFX interface with a clean dark theme. Starts quick, responds instantly, and stays out of your way.</p>
|
||||
</article>
|
||||
|
||||
<article class="feature-card">
|
||||
<span class="feature-num">03</span>
|
||||
<div class="feature-icon" aria-hidden="true">
|
||||
<svg width="22" height="22" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><path d="M5 18H3a2 2 0 0 1-2-2V7a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2v9a2 2 0 0 1-2 2h-2"/><path d="M9 22v-4"/><path d="M15 22v-4"/></svg>
|
||||
</div>
|
||||
<h3>Smart mirrors & proxy</h3>
|
||||
<p>Downloads route through fast mirrors with automatic failover. Blocked or throttled? The proxy takes over so you never stall at 80%.</p>
|
||||
</article>
|
||||
|
||||
<article class="feature-card">
|
||||
<span class="feature-num">04</span>
|
||||
<div class="feature-icon" aria-hidden="true">
|
||||
<svg width="22" height="22" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><path d="M12 2a10 10 0 0 0-9 14l2 5 5-2A10 10 0 1 0 12 2z"/><path d="M8.5 12h.01"/><path d="M12 12h.01"/><path d="M15.5 12h.01"/></svg>
|
||||
</div>
|
||||
<h3>News & server status</h3>
|
||||
<p>Changelogs, events and updates stream straight into the launcher. You always know what's new before you hit play.</p>
|
||||
</article>
|
||||
|
||||
<article class="feature-card">
|
||||
<span class="feature-num">05</span>
|
||||
<div class="feature-icon" aria-hidden="true">
|
||||
<svg width="22" height="22" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><path d="M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2"/><circle cx="9" cy="7" r="4"/><path d="M22 21v-2a4 4 0 0 0-3-3.87"/><path d="M16 3.13a4 4 0 0 1 0 7.75"/></svg>
|
||||
</div>
|
||||
<h3>One-click pack install</h3>
|
||||
<p>Pick a pack, hit install. Version manifests, vanilla assets and libraries are pulled and verified automatically. Simple.</p>
|
||||
</article>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<section class="section download" id="download">
|
||||
<div class="download-inner">
|
||||
<div class="section-head section-head--center">
|
||||
<span class="section-index">02 / 05</span>
|
||||
<h2 class="section-title">Get <span class="accent">Zern.</span></h2>
|
||||
<p class="section-sub">Download the launcher for Windows and join the ZernMC server.</p>
|
||||
</div>
|
||||
|
||||
<div class="download-card">
|
||||
<div class="download-card-top">
|
||||
<img src="/img/zernmc.svg" alt="" width="64" height="64">
|
||||
<div>
|
||||
<h3 class="download-name">Zern Launcher <span id="download-version">—</span></h3>
|
||||
<p class="download-desc">Windows · <span id="download-size">—</span></p>
|
||||
</div>
|
||||
</div>
|
||||
<a class="btn btn-primary btn-block" id="download-btn" href="/launcher/download/latest">
|
||||
<svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M12 3v12"/><path d="m7 10 5 5 5-5"/><path d="M4 21h16"/></svg>
|
||||
Download latest
|
||||
</a>
|
||||
<div class="download-mirrors" id="mirrors">
|
||||
<span class="mirrors-label">Mirrors</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<p class="download-note">No paywalls, no ads. Just a launcher. System requirements: Windows 10+, 4 GB RAM.</p>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<section class="section news" id="news">
|
||||
<div class="section-head">
|
||||
<span class="section-index">03 / 05</span>
|
||||
<h2 class="section-title">What's <span class="accent">new.</span></h2>
|
||||
<p class="section-sub">Latest changelogs and updates from the Zern team.</p>
|
||||
</div>
|
||||
|
||||
<div class="news-grid" id="news-grid">
|
||||
<div class="news-skeleton"></div>
|
||||
<div class="news-skeleton"></div>
|
||||
<div class="news-skeleton"></div>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
</main>
|
||||
|
||||
<footer class="footer">
|
||||
<div class="footer-inner">
|
||||
<div class="footer-brand">
|
||||
<img src="/img/zernmc.svg" alt="Zern" width="28" height="28">
|
||||
<span>ZernMC</span>
|
||||
</div>
|
||||
<p class="footer-note">© <span id="year">2026</span> ZernMC. Not affiliated with Mojang or Microsoft. Minecraft is a trademark of Mojang AB.</p>
|
||||
</div>
|
||||
</footer>
|
||||
|
||||
<script src="/js/main.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
Reference in New Issue
Block a user