Refactor website into data-driven content model

This commit is contained in:
Marc Froehlich
2026-07-06 23:27:06 +02:00
parent a99d611ea8
commit 217c7e8451
49 changed files with 2649 additions and 976 deletions
+37
View File
@@ -0,0 +1,37 @@
module.exports = [
{
os: "Windows",
format: "ZIP",
icon: "🪟",
recommended: true,
url: "https://github.com/praktimarc/kst4contest/releases/latest"
},
{
os: "macOS",
format: "DMG",
icon: "🍎",
recommended: false,
url: "https://github.com/praktimarc/kst4contest/releases/latest"
},
{
os: "Linux",
format: "AppImage / DEB / RPM / Arch",
icon: "🐧",
recommended: false,
url: "https://github.com/praktimarc/kst4contest/releases/latest"
},
{
os: "Flatpak",
format: "flatpakref",
icon: "📦",
recommended: false,
url: "https://github.com/praktimarc/kst4contest/releases/latest"
},
{
os: "Manual",
format: "PDF EN/DE",
icon: "📘",
recommended: false,
url: "https://github.com/praktimarc/kst4contest/releases/latest"
}
];
+39 -11
View File
@@ -4,19 +4,21 @@ module.exports = [
title: "Priority Score System",
icon: "🎯",
category: "Contest Workflow",
since: "1.40",
summary: "Find the most promising stations faster using contest-aware candidate scoring.",
description: "KST4Contest ranks stations by contest-relevant signals such as activity, direction, sked context, bands, frequencies and operator workflow.",
keywords: ["ON4KST", "contest", "priority candidates", "VHF", "UHF", "SHF"],
related: ["airscout", "sked-reminder", "timeline"]
description: "KST4Contest ranks stations by activity, direction, sked context, band information, QRG hints and operator workflow signals.",
tags: ["ON4KST", "VHF", "UHF", "SHF", "contest", "priority candidates"],
related: ["timeline", "airscout", "sked-reminder"]
},
{
slug: "airscout",
title: "AirScout Integration",
icon: "✈️",
category: "Aircraft Scatter",
summary: "Use airplane scatter awareness directly inside your ON4KST contest workflow.",
since: "1.26",
summary: "Use aircraft scatter awareness directly inside your ON4KST contest workflow.",
description: "AirScout information helps operators evaluate AP windows, aircraft scatter timing and candidate stations during VHF/UHF/SHF contests.",
keywords: ["AirScout", "airplane scatter", "aircraft scatter", "VHF contest"],
tags: ["AirScout", "airplane scatter", "aircraft scatter", "VHF contest"],
related: ["timeline", "priority-score", "sked-reminder"]
},
{
@@ -24,9 +26,10 @@ module.exports = [
title: "Timeline View",
icon: "⏱️",
category: "Contest Awareness",
since: "1.40",
summary: "See upcoming AP windows and candidate timing in a compact contest timeline.",
description: "The timeline view helps operators understand short propagation windows and candidate timing during active contest operation.",
keywords: ["AP timeline", "airplane scatter", "contest timing"],
tags: ["timeline", "AP windows", "airplane scatter"],
related: ["airscout", "priority-score"]
},
{
@@ -34,29 +37,54 @@ module.exports = [
title: "Sked Reminder",
icon: "🔔",
category: "Sked Management",
since: "1.40",
summary: "Keep scheduled contacts visible and avoid missing time-critical skeds.",
description: "KST4Contest keeps skeds in focus while the operator handles chat traffic, logging, bands and aircraft scatter timing.",
keywords: ["sked", "ON4KST sked", "contest reminder"],
related: ["priority-score", "airscout"]
tags: ["sked", "ON4KST", "contest reminder"],
related: ["priority-score", "airscout", "timeline"]
},
{
slug: "log-sync",
title: "Log Synchronization",
icon: "🔄",
category: "Logger Integration",
since: "1.31",
summary: "Connect ON4KST chat workflow with Win-Test, UCXLog and contest logging state.",
description: "Log synchronization helps KST4Contest understand worked stations, active bands and contest context.",
keywords: ["Win-Test", "UCXLog", "contest logger", "ON4KST"],
related: ["priority-score"]
tags: ["Win-Test", "UCXLog", "contest logger"],
related: ["priority-score", "dual-chat"]
},
{
slug: "dual-chat",
title: "Dual Chat Categories",
icon: "💬",
category: "ON4KST Chat",
since: "1.26",
summary: "Operate in two ON4KST categories at once, for example VHF/UHF and microwave.",
description: "Dual category support gives contest operators better overview when working across multiple ON4KST chat rooms.",
keywords: ["ON4KST", "dual chat", "microwave contest"],
tags: ["ON4KST", "dual chat", "microwave contest"],
related: ["priority-score", "log-sync"]
},
{
slug: "dx-cluster",
title: "DXCluster Server",
icon: "📡",
category: "Radio Workflow",
since: "1.23",
summary: "Use DXCluster information as part of the wider contest operating workflow.",
description: "KST4Contest includes DXCluster functionality to support situational awareness during contest operation.",
tags: ["DXCluster", "ham radio", "contest"],
related: ["log-sync", "priority-score"]
},
{
slug: "macros",
title: "Macros and Variables",
icon: "⚡",
category: "Operator Speed",
since: "1.0",
summary: "Send recurring contest messages faster with configurable macros and variables.",
description: "Macros reduce repetitive typing and help operators respond quickly during active ON4KST contest sessions.",
tags: ["macros", "ON4KST", "operator workflow"],
related: ["sked-reminder", "dual-chat"]
}
];
+9
View File
@@ -0,0 +1,9 @@
module.exports = [
{ title: "Home", url: "/" },
{ title: "Features", url: "/features/" },
{ title: "Screenshots", url: "/screenshots/" },
{ title: "Download", url: "/download/" },
{ title: "Manual", url: "/manual/" },
{ title: "News", url: "/news/" },
{ title: "FAQ", url: "/faq/" }
];
+23
View File
@@ -0,0 +1,23 @@
module.exports = [
{
id: "main-window",
title: "Main Window",
image: "/assets/screenshots/main-window.png",
alt: "KST4Contest ON4KST contest chat client main window",
caption: "Contest-oriented ON4KST chat workflow with candidate awareness."
},
{
id: "priority-candidates",
title: "Priority Candidates",
image: "/assets/screenshots/priority-candidates.png",
alt: "Priority candidate list in KST4Contest",
caption: "Score-based candidate ranking for faster operator decisions."
},
{
id: "timeline",
title: "Timeline View",
image: "/assets/screenshots/timeline.png",
alt: "KST4Contest AP timeline view",
caption: "Timeline support for AP windows and candidate timing."
}
];