Files
roro9stack/site/templates/base.html
T
twislaandClaude Sonnet 5.5 8f4b5e0ddc Site: roro9stack.net, phase 1 (the home page, Install with a browser flasher, Downloads)
A Zola site in site/, from the design: both themes on the device's
palette, notched shapes, self-hosted fonts, the wordmark and icons, two
generated hero drawings, nine App cards (the mesh messenger marked
planned), real screenshots, the updates and build sections. The Install
page builds ESP Web Tools' manifest in the browser from the Gitea API (it
needs Caddy to allow the origin), refuses any download that isn't on the
project's server, and falls back to the esptool steps. Downloads lists the
releases. The focus ring shows on notched controls. A page checker fails
the build if a page loads from another origin.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EhqxQ49eCju4CzKYNjZzwT
2026-10-06 18:20:18 +02:00

60 lines
2.7 KiB
HTML

<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>{% block title %}roro9stack: open firmware for the Cardputer ADV{% endblock %}</title>
<meta name="description" content="{% block description %}{{ config.description }}{% endblock %}">
<meta name="color-scheme" content="dark light">
<meta name="author" content="Clément Martin">
<meta name="copyright" content="© 2026 Clément Martin">
{% if current_url %}<link rel="canonical" href="{{ current_url }}">{% endif %}
<link rel="icon" href="/img/favicon.svg" type="image/svg+xml">
<link rel="preload" href="/fonts/DMMono-Medium.woff2" as="font" type="font/woff2" crossorigin>
<link rel="preload" href="/fonts/HankenGrotesk.woff2" as="font" type="font/woff2" crossorigin>
<link rel="stylesheet" href="/css/site.css">
<script src="/js/theme.js"></script>
{% block head %}{% endblock %}
</head>
<body>
<a class="skip" href="#main">Skip to the content</a>
<header class="wrap bar">
<a class="brand" href="/" aria-label="roro9stack, home">
<img class="logo logo-dark" src="/img/logo-dark.svg" alt="roro9stack" width="201" height="28">
<img class="logo logo-light" src="/img/logo-light.svg" alt="" width="201" height="28">
</a>
<nav aria-label="Main">
<a href="/#apps">Apps</a>
<a href="/install/">Install</a>
<a href="/downloads/">Downloads</a>
<a href="{{ config.extra.blog }}">Blog</a>
<button class="link-btn js-only" id="theme-toggle" type="button">Light</button>
<a class="btn btn-primary n-md" href="{{ config.extra.repo }}">Source</a>
</nav>
</header>
<main id="main">
{% block main %}{% endblock %}
</main>
<footer>
<div class="wrap">
<div class="foot-row">
<span>© 2026 Clément Martin · Licensed GPL-3.0</span>
<nav aria-label="Footer">
<a href="{{ config.extra.repo }}">Source</a>
<a href="{{ config.extra.repo }}/releases">Releases</a>
<a href="{{ config.extra.repo }}/src/branch/main/docs">Docs in the repository</a>
<a href="{{ config.extra.repo }}/issues">Issues</a>
<a href="{{ config.extra.blog }}">Blog</a>
<a href="mailto:{{ config.extra.contact }}">Contact</a>
</nav>
</div>
<small>roro9stack is an independent project. It isn't affiliated with or endorsed by M5Stack or Meshtastic: those names belong to their owners.</small>
<small>This site sets no cookies and has no analytics, and its pages load nothing from other sites. The Install page asks the project's own server, git.twis.la, for the latest release. Questions, corrections: <a href="mailto:{{ config.extra.contact }}">{{ config.extra.contact }}</a>, or the issue tracker.</small>
</div>
</footer>
</body>
</html>