feat(ui): Symbole fuer Tab, Startbildschirm und Manifest (#017)

npm run icons erzeugt SVG, ICO und PNG aus den Vorlagen in assets/. Fuer kleine
Groessen kommen die vereinfachten Fassungen zum Einsatz.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-09-17 23:46:21 +02:00
co-authored by Claude Opus 5
parent a459d3f770
commit 9c0cefcfe8
18 changed files with 184 additions and 22 deletions
Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

+5
View File
@@ -0,0 +1,5 @@
<!-- Fassung für 32 px: eine Linie, kräftigere Formen. -->
<svg viewBox="0 0 48 48" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" d="M7 3h20a13 13 0 0 1 0 26H17v16H7zM17 12h9a4 4 0 0 1 0 8h-9z" fill="#1E2A44"/>
<path d="M24 38h19" stroke="#17A2B8" stroke-width="5" stroke-linecap="round"/>
</svg>

After

Width:  |  Height:  |  Size: 319 B

+19
View File
@@ -0,0 +1,19 @@
import type { MetadataRoute } from "next";
/** Angaben für den Startbildschirm, wenn das Dashboard als Verknüpfung abgelegt wird. */
export default function manifest(): MetadataRoute.Manifest {
return {
name: "ProxLedger – Proxmox Subscription Dashboard",
short_name: "ProxLedger",
description: "Subscription-Status aller Proxmox-Hosts im Blick",
lang: "de",
start_url: "/",
display: "standalone",
background_color: "#F4F6F9",
theme_color: "#1E2A44",
icons: [
{ src: "/icon-192.png", sizes: "192x192", type: "image/png" },
{ src: "/icon-512.png", sizes: "512x512", type: "image/png", purpose: "any" },
],
};
}
+5
View File
@@ -14,8 +14,13 @@ const OEFFENTLICH = [
"/api/gesundheit",
"/install.sh",
"/agent.sh",
// Symbole und Manifest: Der Browser holt sie auch vor der Anmeldung.
"/favicon.ico",
"/icon.svg",
"/apple-icon.png",
"/icon-192.png",
"/icon-512.png",
"/manifest.webmanifest",
];
export async function proxy(request: NextRequest) {