- router.dnsProviders: named accounts at DNS providers, used by dynamic DNS and certificates (ddclient and lego provider lists in pkgs/router-webui/providers.json). Schema 2 migrates router.ddns. - router.acme: a Let's Encrypt certificate for the web UI via security.acme (DNS-01, resolver 1.1.1.1), served and reloaded by the web UI; Certificate page. - Web UI: password change (web UI and root), reboot button, HTTP to HTTPS redirect (router.webui.httpPort), grouped menu. - Latest kernel (linuxPackages_latest); 7.3 and 7.3.0 are the same kernel for the reboot hint. - SPECS.md: wanted later (REST API, GraphQL, MCP). Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01AeFqV9dZrK6nipHkPfyM4F
45 lines
1.4 KiB
HTML
45 lines
1.4 KiB
HTML
<!doctype html>
|
|
<html lang="en">
|
|
<head>
|
|
<meta charset="utf-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
{{if .Refresh}}<meta http-equiv="refresh" content="{{.Refresh}}">{{end}}
|
|
<title>{{.Title}} · router</title>
|
|
<link rel="stylesheet" href="/static/style.css">
|
|
</head>
|
|
<body>
|
|
<header>
|
|
<strong>router</strong>
|
|
{{if .LoggedIn}}
|
|
<nav>
|
|
<a href="/">Overview</a>
|
|
<details name="menu"><summary>Network</summary><div>
|
|
<a href="/network">Interfaces</a>
|
|
<a href="/dhcp">DHCP</a>
|
|
<a href="/dns">DNS</a>
|
|
<a href="/wireguard">WireGuard</a>
|
|
<a href="/firewall">Firewall</a>
|
|
</div></details>
|
|
<details name="menu"><summary>Services</summary><div>
|
|
<a href="/ddns">Dynamic DNS</a>
|
|
<a href="/dnsproviders">DNS providers</a>
|
|
<a href="/certificate">Certificate</a>
|
|
</div></details>
|
|
<details name="menu"><summary>System</summary><div>
|
|
<a href="/update">Update</a>
|
|
<a href="/advanced">Advanced</a>
|
|
</div></details>
|
|
<form method="post" action="/logout"><input type="hidden" name="csrf" value="{{.CSRF}}"><button class="link">Log out</button></form>
|
|
</nav>
|
|
{{end}}
|
|
</header>
|
|
<main>
|
|
<h1>{{.Title}}</h1>
|
|
{{if .Flash}}<p class="flash">{{.Flash}}</p>{{end}}
|
|
{{if .Error}}<p class="error">{{.Error}}</p>{{end}}
|
|
{{template "content" .}}
|
|
</main>
|
|
<script src="/static/menu.js"></script>
|
|
</body>
|
|
</html>
|