mirror of
https://github.com/praktimarc/kst4contest.git
synced 2026-07-13 16:16:44 +02:00
Refactor website into data-driven content model
This commit is contained in:
@@ -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"
|
||||
}
|
||||
];
|
||||
@@ -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"]
|
||||
}
|
||||
];
|
||||
@@ -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/" }
|
||||
];
|
||||
@@ -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."
|
||||
}
|
||||
];
|
||||
Reference in New Issue
Block a user