mirror of
https://github.com/praktimarc/kst4contest.git
synced 2026-07-13 16:16:44 +02:00
Compare commits
7 Commits
62999cfed8
...
ead985a741
| Author | SHA1 | Date | |
|---|---|---|---|
|
ead985a741
|
|||
|
ef1eeeed36
|
|||
|
4a34e28a84
|
|||
|
38ef50cee8
|
|||
| d45a637d00 | |||
| 1ec2b1a450 | |||
| 19e8cff6b6 |
@@ -22,10 +22,10 @@ env:
|
|||||||
|
|
||||||
concurrency:
|
concurrency:
|
||||||
group: website-build-${{ github.ref }}
|
group: website-build-${{ github.ref }}
|
||||||
cancel-in-progress: true
|
cancel-in-progress: ${{ github.event_name == 'pull_request' }}
|
||||||
|
|
||||||
permissions:
|
permissions:
|
||||||
contents: read
|
contents: write
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
build-website:
|
build-website:
|
||||||
@@ -50,10 +50,25 @@ jobs:
|
|||||||
- name: Build website
|
- name: Build website
|
||||||
working-directory: website
|
working-directory: website
|
||||||
run: npm run build
|
run: npm run build
|
||||||
|
env:
|
||||||
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||||
|
|
||||||
- name: Upload website artifact
|
- name: Upload website artifact
|
||||||
uses: actions/upload-artifact@v4.3.4
|
uses: actions/upload-artifact@v4.3.4
|
||||||
with:
|
with:
|
||||||
name: kst4contest-website
|
name: kst4contest-website
|
||||||
path: website/_site/
|
path: website/_site/
|
||||||
retention-days: 7
|
retention-days: 7
|
||||||
|
|
||||||
|
- name: Commit rebuilt site
|
||||||
|
if: github.event_name == 'push' && github.ref == 'refs/heads/main'
|
||||||
|
run: |
|
||||||
|
git config user.name "github-actions[bot]"
|
||||||
|
git config user.email "github-actions[bot]@users.noreply.github.com"
|
||||||
|
git add website/_site
|
||||||
|
if git diff --cached --quiet; then
|
||||||
|
echo "No changes to commit"
|
||||||
|
else
|
||||||
|
git commit -m "chore: rebuild website [skip ci]"
|
||||||
|
git push
|
||||||
|
fi
|
||||||
@@ -0,0 +1,58 @@
|
|||||||
|
name: Rebuild Roadmap
|
||||||
|
|
||||||
|
on:
|
||||||
|
issues:
|
||||||
|
types: [opened, edited, closed, reopened, labeled, unlabeled, milestoned, demilestoned]
|
||||||
|
|
||||||
|
env:
|
||||||
|
FORCE_JAVASCRIPT_ACTIONS_TO_NODE24: true
|
||||||
|
|
||||||
|
concurrency:
|
||||||
|
group: website-build-${{ github.ref }}
|
||||||
|
cancel-in-progress: false
|
||||||
|
|
||||||
|
permissions:
|
||||||
|
contents: write
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
rebuild-roadmap:
|
||||||
|
name: Rebuild website roadmap
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
# Only worth a rebuild if the "enhancement" label is involved: either the
|
||||||
|
# issue currently carries it, or this event just added/removed it.
|
||||||
|
if: contains(github.event.issue.labels.*.name, 'enhancement') || github.event.label.name == 'enhancement'
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: Checkout
|
||||||
|
uses: actions/checkout@v4.1.7
|
||||||
|
with:
|
||||||
|
ref: main
|
||||||
|
|
||||||
|
- name: Set up Node.js
|
||||||
|
uses: actions/setup-node@v4
|
||||||
|
with:
|
||||||
|
node-version: "24"
|
||||||
|
cache: npm
|
||||||
|
cache-dependency-path: website/package-lock.json
|
||||||
|
|
||||||
|
- name: Install dependencies
|
||||||
|
working-directory: website
|
||||||
|
run: npm ci
|
||||||
|
|
||||||
|
- name: Build website
|
||||||
|
working-directory: website
|
||||||
|
run: npm run build
|
||||||
|
env:
|
||||||
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||||
|
|
||||||
|
- name: Commit rebuilt site
|
||||||
|
run: |
|
||||||
|
git config user.name "github-actions[bot]"
|
||||||
|
git config user.email "github-actions[bot]@users.noreply.github.com"
|
||||||
|
git add website/_site
|
||||||
|
if git diff --cached --quiet; then
|
||||||
|
echo "No changes to commit"
|
||||||
|
else
|
||||||
|
git commit -m "chore: rebuild website roadmap [skip ci]"
|
||||||
|
git push
|
||||||
|
fi
|
||||||
File diff suppressed because it is too large
Load Diff
@@ -17,7 +17,7 @@
|
|||||||
<meta name="twitter:title" content="About KST4Contest">
|
<meta name="twitter:title" content="About KST4Contest">
|
||||||
<meta name="twitter:description" content="About KST4Contest and its contest-oriented ON4KST workflow.">
|
<meta name="twitter:description" content="About KST4Contest and its contest-oriented ON4KST workflow.">
|
||||||
|
|
||||||
<link rel="stylesheet" href="/assets/css/main.css?v=1783425387839">
|
<link rel="stylesheet" href="/assets/css/main.css?v=1783539256714">
|
||||||
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
||||||
|
|
||||||
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
||||||
@@ -47,12 +47,12 @@
|
|||||||
|
|
||||||
<a href="/screenshots/">Screenshots</a>
|
<a href="/screenshots/">Screenshots</a>
|
||||||
|
|
||||||
<a href="/download/">Download</a>
|
|
||||||
|
|
||||||
<a href="/manual/">Manual</a>
|
<a href="/manual/">Manual</a>
|
||||||
|
|
||||||
<a href="/news/">News</a>
|
<a href="/news/">News</a>
|
||||||
|
|
||||||
|
<a href="/roadmap/">Roadmap</a>
|
||||||
|
|
||||||
<a href="/about/">About</a>
|
<a href="/about/">About</a>
|
||||||
|
|
||||||
<a href="/faq/">FAQ</a>
|
<a href="/faq/">FAQ</a>
|
||||||
|
|||||||
@@ -415,6 +415,11 @@ a:hover {
|
|||||||
color: var(--muted);
|
color: var(--muted);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.roadmap-done a {
|
||||||
|
color: var(--muted);
|
||||||
|
text-decoration: line-through;
|
||||||
|
}
|
||||||
|
|
||||||
.feature-icon {
|
.feature-icon {
|
||||||
font-size: 2rem;
|
font-size: 2rem;
|
||||||
margin-bottom: 14px;
|
margin-bottom: 14px;
|
||||||
|
|||||||
@@ -17,7 +17,7 @@
|
|||||||
<meta name="twitter:title" content="Contact | KST4Contest">
|
<meta name="twitter:title" content="Contact | KST4Contest">
|
||||||
<meta name="twitter:description" content="Contact options for KST4Contest.">
|
<meta name="twitter:description" content="Contact options for KST4Contest.">
|
||||||
|
|
||||||
<link rel="stylesheet" href="/assets/css/main.css?v=1783425387839">
|
<link rel="stylesheet" href="/assets/css/main.css?v=1783539256714">
|
||||||
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
||||||
|
|
||||||
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
||||||
@@ -47,12 +47,12 @@
|
|||||||
|
|
||||||
<a href="/screenshots/">Screenshots</a>
|
<a href="/screenshots/">Screenshots</a>
|
||||||
|
|
||||||
<a href="/download/">Download</a>
|
|
||||||
|
|
||||||
<a href="/manual/">Manual</a>
|
<a href="/manual/">Manual</a>
|
||||||
|
|
||||||
<a href="/news/">News</a>
|
<a href="/news/">News</a>
|
||||||
|
|
||||||
|
<a href="/roadmap/">Roadmap</a>
|
||||||
|
|
||||||
<a href="/about/">About</a>
|
<a href="/about/">About</a>
|
||||||
|
|
||||||
<a href="/faq/">FAQ</a>
|
<a href="/faq/">FAQ</a>
|
||||||
|
|||||||
@@ -17,7 +17,7 @@
|
|||||||
<meta name="twitter:title" content="Download KST4Contest">
|
<meta name="twitter:title" content="Download KST4Contest">
|
||||||
<meta name="twitter:description" content="Download KST4Contest releases for Windows, Linux and macOS.">
|
<meta name="twitter:description" content="Download KST4Contest releases for Windows, Linux and macOS.">
|
||||||
|
|
||||||
<link rel="stylesheet" href="/assets/css/main.css?v=1783425387839">
|
<link rel="stylesheet" href="/assets/css/main.css?v=1783539256714">
|
||||||
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
||||||
|
|
||||||
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
||||||
@@ -47,12 +47,12 @@
|
|||||||
|
|
||||||
<a href="/screenshots/">Screenshots</a>
|
<a href="/screenshots/">Screenshots</a>
|
||||||
|
|
||||||
<a href="/download/">Download</a>
|
|
||||||
|
|
||||||
<a href="/manual/">Manual</a>
|
<a href="/manual/">Manual</a>
|
||||||
|
|
||||||
<a href="/news/">News</a>
|
<a href="/news/">News</a>
|
||||||
|
|
||||||
|
<a href="/roadmap/">Roadmap</a>
|
||||||
|
|
||||||
<a href="/about/">About</a>
|
<a href="/about/">About</a>
|
||||||
|
|
||||||
<a href="/faq/">FAQ</a>
|
<a href="/faq/">FAQ</a>
|
||||||
|
|||||||
@@ -17,7 +17,7 @@
|
|||||||
<meta name="twitter:title" content="KST4Contest FAQ">
|
<meta name="twitter:title" content="KST4Contest FAQ">
|
||||||
<meta name="twitter:description" content="Frequently asked questions about KST4Contest, ON4KST contest operation, AirScout integration and VHF/UHF/SHF contest workflow.">
|
<meta name="twitter:description" content="Frequently asked questions about KST4Contest, ON4KST contest operation, AirScout integration and VHF/UHF/SHF contest workflow.">
|
||||||
|
|
||||||
<link rel="stylesheet" href="/assets/css/main.css?v=1783425387839">
|
<link rel="stylesheet" href="/assets/css/main.css?v=1783539256714">
|
||||||
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
||||||
|
|
||||||
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
||||||
@@ -47,12 +47,12 @@
|
|||||||
|
|
||||||
<a href="/screenshots/">Screenshots</a>
|
<a href="/screenshots/">Screenshots</a>
|
||||||
|
|
||||||
<a href="/download/">Download</a>
|
|
||||||
|
|
||||||
<a href="/manual/">Manual</a>
|
<a href="/manual/">Manual</a>
|
||||||
|
|
||||||
<a href="/news/">News</a>
|
<a href="/news/">News</a>
|
||||||
|
|
||||||
|
<a href="/roadmap/">Roadmap</a>
|
||||||
|
|
||||||
<a href="/about/">About</a>
|
<a href="/about/">About</a>
|
||||||
|
|
||||||
<a href="/faq/">FAQ</a>
|
<a href="/faq/">FAQ</a>
|
||||||
|
|||||||
@@ -17,7 +17,7 @@
|
|||||||
<meta name="twitter:title" content="AirScout Integration">
|
<meta name="twitter:title" content="AirScout Integration">
|
||||||
<meta name="twitter:description" content="AirScout information helps operators evaluate AP windows, aircraft scatter timing and candidate stations during VHF/UHF/SHF contests.">
|
<meta name="twitter:description" content="AirScout information helps operators evaluate AP windows, aircraft scatter timing and candidate stations during VHF/UHF/SHF contests.">
|
||||||
|
|
||||||
<link rel="stylesheet" href="/assets/css/main.css?v=1783425387839">
|
<link rel="stylesheet" href="/assets/css/main.css?v=1783539256714">
|
||||||
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
||||||
|
|
||||||
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
||||||
@@ -47,12 +47,12 @@
|
|||||||
|
|
||||||
<a href="/screenshots/">Screenshots</a>
|
<a href="/screenshots/">Screenshots</a>
|
||||||
|
|
||||||
<a href="/download/">Download</a>
|
|
||||||
|
|
||||||
<a href="/manual/">Manual</a>
|
<a href="/manual/">Manual</a>
|
||||||
|
|
||||||
<a href="/news/">News</a>
|
<a href="/news/">News</a>
|
||||||
|
|
||||||
|
<a href="/roadmap/">Roadmap</a>
|
||||||
|
|
||||||
<a href="/about/">About</a>
|
<a href="/about/">About</a>
|
||||||
|
|
||||||
<a href="/faq/">FAQ</a>
|
<a href="/faq/">FAQ</a>
|
||||||
|
|||||||
@@ -17,7 +17,7 @@
|
|||||||
<meta name="twitter:title" content="Dual Chat Categories">
|
<meta name="twitter:title" content="Dual Chat Categories">
|
||||||
<meta name="twitter:description" content="Dual category support gives contest operators better overview when working across multiple ON4KST chat rooms.">
|
<meta name="twitter:description" content="Dual category support gives contest operators better overview when working across multiple ON4KST chat rooms.">
|
||||||
|
|
||||||
<link rel="stylesheet" href="/assets/css/main.css?v=1783425387839">
|
<link rel="stylesheet" href="/assets/css/main.css?v=1783539256714">
|
||||||
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
||||||
|
|
||||||
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
||||||
@@ -47,12 +47,12 @@
|
|||||||
|
|
||||||
<a href="/screenshots/">Screenshots</a>
|
<a href="/screenshots/">Screenshots</a>
|
||||||
|
|
||||||
<a href="/download/">Download</a>
|
|
||||||
|
|
||||||
<a href="/manual/">Manual</a>
|
<a href="/manual/">Manual</a>
|
||||||
|
|
||||||
<a href="/news/">News</a>
|
<a href="/news/">News</a>
|
||||||
|
|
||||||
|
<a href="/roadmap/">Roadmap</a>
|
||||||
|
|
||||||
<a href="/about/">About</a>
|
<a href="/about/">About</a>
|
||||||
|
|
||||||
<a href="/faq/">FAQ</a>
|
<a href="/faq/">FAQ</a>
|
||||||
|
|||||||
@@ -17,7 +17,7 @@
|
|||||||
<meta name="twitter:title" content="DXCluster Server">
|
<meta name="twitter:title" content="DXCluster Server">
|
||||||
<meta name="twitter:description" content="KST4Contest includes DXCluster functionality to support situational awareness during contest operation.">
|
<meta name="twitter:description" content="KST4Contest includes DXCluster functionality to support situational awareness during contest operation.">
|
||||||
|
|
||||||
<link rel="stylesheet" href="/assets/css/main.css?v=1783425387839">
|
<link rel="stylesheet" href="/assets/css/main.css?v=1783539256714">
|
||||||
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
||||||
|
|
||||||
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
||||||
@@ -47,12 +47,12 @@
|
|||||||
|
|
||||||
<a href="/screenshots/">Screenshots</a>
|
<a href="/screenshots/">Screenshots</a>
|
||||||
|
|
||||||
<a href="/download/">Download</a>
|
|
||||||
|
|
||||||
<a href="/manual/">Manual</a>
|
<a href="/manual/">Manual</a>
|
||||||
|
|
||||||
<a href="/news/">News</a>
|
<a href="/news/">News</a>
|
||||||
|
|
||||||
|
<a href="/roadmap/">Roadmap</a>
|
||||||
|
|
||||||
<a href="/about/">About</a>
|
<a href="/about/">About</a>
|
||||||
|
|
||||||
<a href="/faq/">FAQ</a>
|
<a href="/faq/">FAQ</a>
|
||||||
|
|||||||
@@ -17,7 +17,7 @@
|
|||||||
<meta name="twitter:title" content="KST4Contest Features">
|
<meta name="twitter:title" content="KST4Contest Features">
|
||||||
<meta name="twitter:description" content="Contest-optimized ON4KST features for VHF, UHF and SHF operation.">
|
<meta name="twitter:description" content="Contest-optimized ON4KST features for VHF, UHF and SHF operation.">
|
||||||
|
|
||||||
<link rel="stylesheet" href="/assets/css/main.css?v=1783425387839">
|
<link rel="stylesheet" href="/assets/css/main.css?v=1783539256714">
|
||||||
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
||||||
|
|
||||||
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
||||||
@@ -47,12 +47,12 @@
|
|||||||
|
|
||||||
<a href="/screenshots/">Screenshots</a>
|
<a href="/screenshots/">Screenshots</a>
|
||||||
|
|
||||||
<a href="/download/">Download</a>
|
|
||||||
|
|
||||||
<a href="/manual/">Manual</a>
|
<a href="/manual/">Manual</a>
|
||||||
|
|
||||||
<a href="/news/">News</a>
|
<a href="/news/">News</a>
|
||||||
|
|
||||||
|
<a href="/roadmap/">Roadmap</a>
|
||||||
|
|
||||||
<a href="/about/">About</a>
|
<a href="/about/">About</a>
|
||||||
|
|
||||||
<a href="/faq/">FAQ</a>
|
<a href="/faq/">FAQ</a>
|
||||||
|
|||||||
@@ -17,7 +17,7 @@
|
|||||||
<meta name="twitter:title" content="Log Synchronization">
|
<meta name="twitter:title" content="Log Synchronization">
|
||||||
<meta name="twitter:description" content="Log synchronization helps KST4Contest understand worked stations, active bands and contest context.">
|
<meta name="twitter:description" content="Log synchronization helps KST4Contest understand worked stations, active bands and contest context.">
|
||||||
|
|
||||||
<link rel="stylesheet" href="/assets/css/main.css?v=1783425387839">
|
<link rel="stylesheet" href="/assets/css/main.css?v=1783539256714">
|
||||||
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
||||||
|
|
||||||
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
||||||
@@ -47,12 +47,12 @@
|
|||||||
|
|
||||||
<a href="/screenshots/">Screenshots</a>
|
<a href="/screenshots/">Screenshots</a>
|
||||||
|
|
||||||
<a href="/download/">Download</a>
|
|
||||||
|
|
||||||
<a href="/manual/">Manual</a>
|
<a href="/manual/">Manual</a>
|
||||||
|
|
||||||
<a href="/news/">News</a>
|
<a href="/news/">News</a>
|
||||||
|
|
||||||
|
<a href="/roadmap/">Roadmap</a>
|
||||||
|
|
||||||
<a href="/about/">About</a>
|
<a href="/about/">About</a>
|
||||||
|
|
||||||
<a href="/faq/">FAQ</a>
|
<a href="/faq/">FAQ</a>
|
||||||
|
|||||||
@@ -17,7 +17,7 @@
|
|||||||
<meta name="twitter:title" content="Macros and Variables">
|
<meta name="twitter:title" content="Macros and Variables">
|
||||||
<meta name="twitter:description" content="Macros reduce repetitive typing and help operators respond quickly during active ON4KST contest sessions.">
|
<meta name="twitter:description" content="Macros reduce repetitive typing and help operators respond quickly during active ON4KST contest sessions.">
|
||||||
|
|
||||||
<link rel="stylesheet" href="/assets/css/main.css?v=1783425387839">
|
<link rel="stylesheet" href="/assets/css/main.css?v=1783539256714">
|
||||||
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
||||||
|
|
||||||
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
||||||
@@ -47,12 +47,12 @@
|
|||||||
|
|
||||||
<a href="/screenshots/">Screenshots</a>
|
<a href="/screenshots/">Screenshots</a>
|
||||||
|
|
||||||
<a href="/download/">Download</a>
|
|
||||||
|
|
||||||
<a href="/manual/">Manual</a>
|
<a href="/manual/">Manual</a>
|
||||||
|
|
||||||
<a href="/news/">News</a>
|
<a href="/news/">News</a>
|
||||||
|
|
||||||
|
<a href="/roadmap/">Roadmap</a>
|
||||||
|
|
||||||
<a href="/about/">About</a>
|
<a href="/about/">About</a>
|
||||||
|
|
||||||
<a href="/faq/">FAQ</a>
|
<a href="/faq/">FAQ</a>
|
||||||
|
|||||||
@@ -17,7 +17,7 @@
|
|||||||
<meta name="twitter:title" content="Priority Score System">
|
<meta name="twitter:title" content="Priority Score System">
|
||||||
<meta name="twitter:description" content="KST4Contest ranks stations by activity, direction, sked context, band information, QRG hints and operator workflow signals.">
|
<meta name="twitter:description" content="KST4Contest ranks stations by activity, direction, sked context, band information, QRG hints and operator workflow signals.">
|
||||||
|
|
||||||
<link rel="stylesheet" href="/assets/css/main.css?v=1783425387839">
|
<link rel="stylesheet" href="/assets/css/main.css?v=1783539256714">
|
||||||
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
||||||
|
|
||||||
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
||||||
@@ -47,12 +47,12 @@
|
|||||||
|
|
||||||
<a href="/screenshots/">Screenshots</a>
|
<a href="/screenshots/">Screenshots</a>
|
||||||
|
|
||||||
<a href="/download/">Download</a>
|
|
||||||
|
|
||||||
<a href="/manual/">Manual</a>
|
<a href="/manual/">Manual</a>
|
||||||
|
|
||||||
<a href="/news/">News</a>
|
<a href="/news/">News</a>
|
||||||
|
|
||||||
|
<a href="/roadmap/">Roadmap</a>
|
||||||
|
|
||||||
<a href="/about/">About</a>
|
<a href="/about/">About</a>
|
||||||
|
|
||||||
<a href="/faq/">FAQ</a>
|
<a href="/faq/">FAQ</a>
|
||||||
|
|||||||
@@ -17,7 +17,7 @@
|
|||||||
<meta name="twitter:title" content="Sked Reminder">
|
<meta name="twitter:title" content="Sked Reminder">
|
||||||
<meta name="twitter:description" content="KST4Contest keeps skeds in focus while the operator handles chat traffic, logging, bands and aircraft scatter timing.">
|
<meta name="twitter:description" content="KST4Contest keeps skeds in focus while the operator handles chat traffic, logging, bands and aircraft scatter timing.">
|
||||||
|
|
||||||
<link rel="stylesheet" href="/assets/css/main.css?v=1783425387839">
|
<link rel="stylesheet" href="/assets/css/main.css?v=1783539256714">
|
||||||
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
||||||
|
|
||||||
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
||||||
@@ -47,12 +47,12 @@
|
|||||||
|
|
||||||
<a href="/screenshots/">Screenshots</a>
|
<a href="/screenshots/">Screenshots</a>
|
||||||
|
|
||||||
<a href="/download/">Download</a>
|
|
||||||
|
|
||||||
<a href="/manual/">Manual</a>
|
<a href="/manual/">Manual</a>
|
||||||
|
|
||||||
<a href="/news/">News</a>
|
<a href="/news/">News</a>
|
||||||
|
|
||||||
|
<a href="/roadmap/">Roadmap</a>
|
||||||
|
|
||||||
<a href="/about/">About</a>
|
<a href="/about/">About</a>
|
||||||
|
|
||||||
<a href="/faq/">FAQ</a>
|
<a href="/faq/">FAQ</a>
|
||||||
|
|||||||
@@ -17,7 +17,7 @@
|
|||||||
<meta name="twitter:title" content="Timeline View">
|
<meta name="twitter:title" content="Timeline View">
|
||||||
<meta name="twitter:description" content="The timeline view helps operators understand short propagation windows and candidate timing during active contest operation.">
|
<meta name="twitter:description" content="The timeline view helps operators understand short propagation windows and candidate timing during active contest operation.">
|
||||||
|
|
||||||
<link rel="stylesheet" href="/assets/css/main.css?v=1783425387839">
|
<link rel="stylesheet" href="/assets/css/main.css?v=1783539256714">
|
||||||
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
||||||
|
|
||||||
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
||||||
@@ -47,12 +47,12 @@
|
|||||||
|
|
||||||
<a href="/screenshots/">Screenshots</a>
|
<a href="/screenshots/">Screenshots</a>
|
||||||
|
|
||||||
<a href="/download/">Download</a>
|
|
||||||
|
|
||||||
<a href="/manual/">Manual</a>
|
<a href="/manual/">Manual</a>
|
||||||
|
|
||||||
<a href="/news/">News</a>
|
<a href="/news/">News</a>
|
||||||
|
|
||||||
|
<a href="/roadmap/">Roadmap</a>
|
||||||
|
|
||||||
<a href="/about/">About</a>
|
<a href="/about/">About</a>
|
||||||
|
|
||||||
<a href="/faq/">FAQ</a>
|
<a href="/faq/">FAQ</a>
|
||||||
|
|||||||
@@ -17,7 +17,7 @@
|
|||||||
<meta name="twitter:title" content="KST4Contest – Contest-Optimized ON4KST Chat Client">
|
<meta name="twitter:title" content="KST4Contest – Contest-Optimized ON4KST Chat Client">
|
||||||
<meta name="twitter:description" content="KST4Contest is a modern ON4KST chat client built for VHF, UHF and SHF contest operation.">
|
<meta name="twitter:description" content="KST4Contest is a modern ON4KST chat client built for VHF, UHF and SHF contest operation.">
|
||||||
|
|
||||||
<link rel="stylesheet" href="/assets/css/main.css?v=1783425387839">
|
<link rel="stylesheet" href="/assets/css/main.css?v=1783539256714">
|
||||||
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
||||||
|
|
||||||
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
||||||
@@ -47,12 +47,12 @@
|
|||||||
|
|
||||||
<a href="/screenshots/">Screenshots</a>
|
<a href="/screenshots/">Screenshots</a>
|
||||||
|
|
||||||
<a href="/download/">Download</a>
|
|
||||||
|
|
||||||
<a href="/manual/">Manual</a>
|
<a href="/manual/">Manual</a>
|
||||||
|
|
||||||
<a href="/news/">News</a>
|
<a href="/news/">News</a>
|
||||||
|
|
||||||
|
<a href="/roadmap/">Roadmap</a>
|
||||||
|
|
||||||
<a href="/about/">About</a>
|
<a href="/about/">About</a>
|
||||||
|
|
||||||
<a href="/faq/">FAQ</a>
|
<a href="/faq/">FAQ</a>
|
||||||
|
|||||||
@@ -17,7 +17,7 @@
|
|||||||
<meta name="twitter:title" content="Legal Notice | KST4Contest">
|
<meta name="twitter:title" content="Legal Notice | KST4Contest">
|
||||||
<meta name="twitter:description" content="Legal notice for the KST4Contest website.">
|
<meta name="twitter:description" content="Legal notice for the KST4Contest website.">
|
||||||
|
|
||||||
<link rel="stylesheet" href="/assets/css/main.css?v=1783425387839">
|
<link rel="stylesheet" href="/assets/css/main.css?v=1783539256714">
|
||||||
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
||||||
|
|
||||||
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
||||||
@@ -47,12 +47,12 @@
|
|||||||
|
|
||||||
<a href="/screenshots/">Screenshots</a>
|
<a href="/screenshots/">Screenshots</a>
|
||||||
|
|
||||||
<a href="/download/">Download</a>
|
|
||||||
|
|
||||||
<a href="/manual/">Manual</a>
|
<a href="/manual/">Manual</a>
|
||||||
|
|
||||||
<a href="/news/">News</a>
|
<a href="/news/">News</a>
|
||||||
|
|
||||||
|
<a href="/roadmap/">Roadmap</a>
|
||||||
|
|
||||||
<a href="/about/">About</a>
|
<a href="/about/">About</a>
|
||||||
|
|
||||||
<a href="/faq/">FAQ</a>
|
<a href="/faq/">FAQ</a>
|
||||||
|
|||||||
@@ -17,7 +17,7 @@
|
|||||||
<meta name="twitter:title" content="{{ manual.title }} | KST4Contest Manual">
|
<meta name="twitter:title" content="{{ manual.title }} | KST4Contest Manual">
|
||||||
<meta name="twitter:description" content="KST4Contest manual page: {{ manual.title }}">
|
<meta name="twitter:description" content="KST4Contest manual page: {{ manual.title }}">
|
||||||
|
|
||||||
<link rel="stylesheet" href="/assets/css/main.css?v=1783425387839">
|
<link rel="stylesheet" href="/assets/css/main.css?v=1783539256714">
|
||||||
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
||||||
|
|
||||||
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
||||||
@@ -47,12 +47,12 @@
|
|||||||
|
|
||||||
<a href="/screenshots/">Screenshots</a>
|
<a href="/screenshots/">Screenshots</a>
|
||||||
|
|
||||||
<a href="/download/">Download</a>
|
|
||||||
|
|
||||||
<a href="/manual/">Manual</a>
|
<a href="/manual/">Manual</a>
|
||||||
|
|
||||||
<a href="/news/">News</a>
|
<a href="/news/">News</a>
|
||||||
|
|
||||||
|
<a href="/roadmap/">Roadmap</a>
|
||||||
|
|
||||||
<a href="/about/">About</a>
|
<a href="/about/">About</a>
|
||||||
|
|
||||||
<a href="/faq/">FAQ</a>
|
<a href="/faq/">FAQ</a>
|
||||||
|
|||||||
@@ -17,7 +17,7 @@
|
|||||||
<meta name="twitter:title" content="{{ manual.title }} | KST4Contest Manual">
|
<meta name="twitter:title" content="{{ manual.title }} | KST4Contest Manual">
|
||||||
<meta name="twitter:description" content="KST4Contest manual page: {{ manual.title }}">
|
<meta name="twitter:description" content="KST4Contest manual page: {{ manual.title }}">
|
||||||
|
|
||||||
<link rel="stylesheet" href="/assets/css/main.css?v=1783425387839">
|
<link rel="stylesheet" href="/assets/css/main.css?v=1783539256714">
|
||||||
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
||||||
|
|
||||||
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
||||||
@@ -47,12 +47,12 @@
|
|||||||
|
|
||||||
<a href="/screenshots/">Screenshots</a>
|
<a href="/screenshots/">Screenshots</a>
|
||||||
|
|
||||||
<a href="/download/">Download</a>
|
|
||||||
|
|
||||||
<a href="/manual/">Manual</a>
|
<a href="/manual/">Manual</a>
|
||||||
|
|
||||||
<a href="/news/">News</a>
|
<a href="/news/">News</a>
|
||||||
|
|
||||||
|
<a href="/roadmap/">Roadmap</a>
|
||||||
|
|
||||||
<a href="/about/">About</a>
|
<a href="/about/">About</a>
|
||||||
|
|
||||||
<a href="/faq/">FAQ</a>
|
<a href="/faq/">FAQ</a>
|
||||||
|
|||||||
@@ -17,7 +17,7 @@
|
|||||||
<meta name="twitter:title" content="{{ manual.title }} | KST4Contest Manual">
|
<meta name="twitter:title" content="{{ manual.title }} | KST4Contest Manual">
|
||||||
<meta name="twitter:description" content="KST4Contest manual page: {{ manual.title }}">
|
<meta name="twitter:description" content="KST4Contest manual page: {{ manual.title }}">
|
||||||
|
|
||||||
<link rel="stylesheet" href="/assets/css/main.css?v=1783425387839">
|
<link rel="stylesheet" href="/assets/css/main.css?v=1783539256714">
|
||||||
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
||||||
|
|
||||||
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
||||||
@@ -47,12 +47,12 @@
|
|||||||
|
|
||||||
<a href="/screenshots/">Screenshots</a>
|
<a href="/screenshots/">Screenshots</a>
|
||||||
|
|
||||||
<a href="/download/">Download</a>
|
|
||||||
|
|
||||||
<a href="/manual/">Manual</a>
|
<a href="/manual/">Manual</a>
|
||||||
|
|
||||||
<a href="/news/">News</a>
|
<a href="/news/">News</a>
|
||||||
|
|
||||||
|
<a href="/roadmap/">Roadmap</a>
|
||||||
|
|
||||||
<a href="/about/">About</a>
|
<a href="/about/">About</a>
|
||||||
|
|
||||||
<a href="/faq/">FAQ</a>
|
<a href="/faq/">FAQ</a>
|
||||||
|
|||||||
@@ -17,7 +17,7 @@
|
|||||||
<meta name="twitter:title" content="{{ manual.title }} | KST4Contest Manual">
|
<meta name="twitter:title" content="{{ manual.title }} | KST4Contest Manual">
|
||||||
<meta name="twitter:description" content="KST4Contest manual page: {{ manual.title }}">
|
<meta name="twitter:description" content="KST4Contest manual page: {{ manual.title }}">
|
||||||
|
|
||||||
<link rel="stylesheet" href="/assets/css/main.css?v=1783425387839">
|
<link rel="stylesheet" href="/assets/css/main.css?v=1783539256714">
|
||||||
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
||||||
|
|
||||||
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
||||||
@@ -47,12 +47,12 @@
|
|||||||
|
|
||||||
<a href="/screenshots/">Screenshots</a>
|
<a href="/screenshots/">Screenshots</a>
|
||||||
|
|
||||||
<a href="/download/">Download</a>
|
|
||||||
|
|
||||||
<a href="/manual/">Manual</a>
|
<a href="/manual/">Manual</a>
|
||||||
|
|
||||||
<a href="/news/">News</a>
|
<a href="/news/">News</a>
|
||||||
|
|
||||||
|
<a href="/roadmap/">Roadmap</a>
|
||||||
|
|
||||||
<a href="/about/">About</a>
|
<a href="/about/">About</a>
|
||||||
|
|
||||||
<a href="/faq/">FAQ</a>
|
<a href="/faq/">FAQ</a>
|
||||||
|
|||||||
@@ -17,7 +17,7 @@
|
|||||||
<meta name="twitter:title" content="{{ manual.title }} | KST4Contest Manual">
|
<meta name="twitter:title" content="{{ manual.title }} | KST4Contest Manual">
|
||||||
<meta name="twitter:description" content="KST4Contest manual page: {{ manual.title }}">
|
<meta name="twitter:description" content="KST4Contest manual page: {{ manual.title }}">
|
||||||
|
|
||||||
<link rel="stylesheet" href="/assets/css/main.css?v=1783425387839">
|
<link rel="stylesheet" href="/assets/css/main.css?v=1783539256714">
|
||||||
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
||||||
|
|
||||||
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
||||||
@@ -47,12 +47,12 @@
|
|||||||
|
|
||||||
<a href="/screenshots/">Screenshots</a>
|
<a href="/screenshots/">Screenshots</a>
|
||||||
|
|
||||||
<a href="/download/">Download</a>
|
|
||||||
|
|
||||||
<a href="/manual/">Manual</a>
|
<a href="/manual/">Manual</a>
|
||||||
|
|
||||||
<a href="/news/">News</a>
|
<a href="/news/">News</a>
|
||||||
|
|
||||||
|
<a href="/roadmap/">Roadmap</a>
|
||||||
|
|
||||||
<a href="/about/">About</a>
|
<a href="/about/">About</a>
|
||||||
|
|
||||||
<a href="/faq/">FAQ</a>
|
<a href="/faq/">FAQ</a>
|
||||||
|
|||||||
@@ -17,7 +17,7 @@
|
|||||||
<meta name="twitter:title" content="{{ manual.title }} | KST4Contest Manual">
|
<meta name="twitter:title" content="{{ manual.title }} | KST4Contest Manual">
|
||||||
<meta name="twitter:description" content="KST4Contest manual page: {{ manual.title }}">
|
<meta name="twitter:description" content="KST4Contest manual page: {{ manual.title }}">
|
||||||
|
|
||||||
<link rel="stylesheet" href="/assets/css/main.css?v=1783425387839">
|
<link rel="stylesheet" href="/assets/css/main.css?v=1783539256714">
|
||||||
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
||||||
|
|
||||||
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
||||||
@@ -47,12 +47,12 @@
|
|||||||
|
|
||||||
<a href="/screenshots/">Screenshots</a>
|
<a href="/screenshots/">Screenshots</a>
|
||||||
|
|
||||||
<a href="/download/">Download</a>
|
|
||||||
|
|
||||||
<a href="/manual/">Manual</a>
|
<a href="/manual/">Manual</a>
|
||||||
|
|
||||||
<a href="/news/">News</a>
|
<a href="/news/">News</a>
|
||||||
|
|
||||||
|
<a href="/roadmap/">Roadmap</a>
|
||||||
|
|
||||||
<a href="/about/">About</a>
|
<a href="/about/">About</a>
|
||||||
|
|
||||||
<a href="/faq/">FAQ</a>
|
<a href="/faq/">FAQ</a>
|
||||||
|
|||||||
@@ -17,7 +17,7 @@
|
|||||||
<meta name="twitter:title" content="KST4Contest Deutsches Handbuch">
|
<meta name="twitter:title" content="KST4Contest Deutsches Handbuch">
|
||||||
<meta name="twitter:description" content="Deutsches Benutzerhandbuch für KST4Contest.">
|
<meta name="twitter:description" content="Deutsches Benutzerhandbuch für KST4Contest.">
|
||||||
|
|
||||||
<link rel="stylesheet" href="/assets/css/main.css?v=1783425387839">
|
<link rel="stylesheet" href="/assets/css/main.css?v=1783539256714">
|
||||||
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
||||||
|
|
||||||
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
||||||
@@ -47,12 +47,12 @@
|
|||||||
|
|
||||||
<a href="/screenshots/">Screenshots</a>
|
<a href="/screenshots/">Screenshots</a>
|
||||||
|
|
||||||
<a href="/download/">Download</a>
|
|
||||||
|
|
||||||
<a href="/manual/">Manual</a>
|
<a href="/manual/">Manual</a>
|
||||||
|
|
||||||
<a href="/news/">News</a>
|
<a href="/news/">News</a>
|
||||||
|
|
||||||
|
<a href="/roadmap/">Roadmap</a>
|
||||||
|
|
||||||
<a href="/about/">About</a>
|
<a href="/about/">About</a>
|
||||||
|
|
||||||
<a href="/faq/">FAQ</a>
|
<a href="/faq/">FAQ</a>
|
||||||
|
|||||||
@@ -17,7 +17,7 @@
|
|||||||
<meta name="twitter:title" content="{{ manual.title }} | KST4Contest Manual">
|
<meta name="twitter:title" content="{{ manual.title }} | KST4Contest Manual">
|
||||||
<meta name="twitter:description" content="KST4Contest manual page: {{ manual.title }}">
|
<meta name="twitter:description" content="KST4Contest manual page: {{ manual.title }}">
|
||||||
|
|
||||||
<link rel="stylesheet" href="/assets/css/main.css?v=1783425387839">
|
<link rel="stylesheet" href="/assets/css/main.css?v=1783539256714">
|
||||||
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
||||||
|
|
||||||
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
||||||
@@ -47,12 +47,12 @@
|
|||||||
|
|
||||||
<a href="/screenshots/">Screenshots</a>
|
<a href="/screenshots/">Screenshots</a>
|
||||||
|
|
||||||
<a href="/download/">Download</a>
|
|
||||||
|
|
||||||
<a href="/manual/">Manual</a>
|
<a href="/manual/">Manual</a>
|
||||||
|
|
||||||
<a href="/news/">News</a>
|
<a href="/news/">News</a>
|
||||||
|
|
||||||
|
<a href="/roadmap/">Roadmap</a>
|
||||||
|
|
||||||
<a href="/about/">About</a>
|
<a href="/about/">About</a>
|
||||||
|
|
||||||
<a href="/faq/">FAQ</a>
|
<a href="/faq/">FAQ</a>
|
||||||
|
|||||||
@@ -17,7 +17,7 @@
|
|||||||
<meta name="twitter:title" content="{{ manual.title }} | KST4Contest Manual">
|
<meta name="twitter:title" content="{{ manual.title }} | KST4Contest Manual">
|
||||||
<meta name="twitter:description" content="KST4Contest manual page: {{ manual.title }}">
|
<meta name="twitter:description" content="KST4Contest manual page: {{ manual.title }}">
|
||||||
|
|
||||||
<link rel="stylesheet" href="/assets/css/main.css?v=1783425387839">
|
<link rel="stylesheet" href="/assets/css/main.css?v=1783539256714">
|
||||||
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
||||||
|
|
||||||
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
||||||
@@ -47,12 +47,12 @@
|
|||||||
|
|
||||||
<a href="/screenshots/">Screenshots</a>
|
<a href="/screenshots/">Screenshots</a>
|
||||||
|
|
||||||
<a href="/download/">Download</a>
|
|
||||||
|
|
||||||
<a href="/manual/">Manual</a>
|
<a href="/manual/">Manual</a>
|
||||||
|
|
||||||
<a href="/news/">News</a>
|
<a href="/news/">News</a>
|
||||||
|
|
||||||
|
<a href="/roadmap/">Roadmap</a>
|
||||||
|
|
||||||
<a href="/about/">About</a>
|
<a href="/about/">About</a>
|
||||||
|
|
||||||
<a href="/faq/">FAQ</a>
|
<a href="/faq/">FAQ</a>
|
||||||
|
|||||||
@@ -17,7 +17,7 @@
|
|||||||
<meta name="twitter:title" content="{{ manual.title }} | KST4Contest Manual">
|
<meta name="twitter:title" content="{{ manual.title }} | KST4Contest Manual">
|
||||||
<meta name="twitter:description" content="KST4Contest manual page: {{ manual.title }}">
|
<meta name="twitter:description" content="KST4Contest manual page: {{ manual.title }}">
|
||||||
|
|
||||||
<link rel="stylesheet" href="/assets/css/main.css?v=1783425387839">
|
<link rel="stylesheet" href="/assets/css/main.css?v=1783539256714">
|
||||||
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
||||||
|
|
||||||
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
||||||
@@ -47,12 +47,12 @@
|
|||||||
|
|
||||||
<a href="/screenshots/">Screenshots</a>
|
<a href="/screenshots/">Screenshots</a>
|
||||||
|
|
||||||
<a href="/download/">Download</a>
|
|
||||||
|
|
||||||
<a href="/manual/">Manual</a>
|
<a href="/manual/">Manual</a>
|
||||||
|
|
||||||
<a href="/news/">News</a>
|
<a href="/news/">News</a>
|
||||||
|
|
||||||
|
<a href="/roadmap/">Roadmap</a>
|
||||||
|
|
||||||
<a href="/about/">About</a>
|
<a href="/about/">About</a>
|
||||||
|
|
||||||
<a href="/faq/">FAQ</a>
|
<a href="/faq/">FAQ</a>
|
||||||
|
|||||||
@@ -17,7 +17,7 @@
|
|||||||
<meta name="twitter:title" content="{{ manual.title }} | KST4Contest Manual">
|
<meta name="twitter:title" content="{{ manual.title }} | KST4Contest Manual">
|
||||||
<meta name="twitter:description" content="KST4Contest manual page: {{ manual.title }}">
|
<meta name="twitter:description" content="KST4Contest manual page: {{ manual.title }}">
|
||||||
|
|
||||||
<link rel="stylesheet" href="/assets/css/main.css?v=1783425387839">
|
<link rel="stylesheet" href="/assets/css/main.css?v=1783539256714">
|
||||||
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
||||||
|
|
||||||
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
||||||
@@ -47,12 +47,12 @@
|
|||||||
|
|
||||||
<a href="/screenshots/">Screenshots</a>
|
<a href="/screenshots/">Screenshots</a>
|
||||||
|
|
||||||
<a href="/download/">Download</a>
|
|
||||||
|
|
||||||
<a href="/manual/">Manual</a>
|
<a href="/manual/">Manual</a>
|
||||||
|
|
||||||
<a href="/news/">News</a>
|
<a href="/news/">News</a>
|
||||||
|
|
||||||
|
<a href="/roadmap/">Roadmap</a>
|
||||||
|
|
||||||
<a href="/about/">About</a>
|
<a href="/about/">About</a>
|
||||||
|
|
||||||
<a href="/faq/">FAQ</a>
|
<a href="/faq/">FAQ</a>
|
||||||
|
|||||||
@@ -17,7 +17,7 @@
|
|||||||
<meta name="twitter:title" content="{{ manual.title }} | KST4Contest Manual">
|
<meta name="twitter:title" content="{{ manual.title }} | KST4Contest Manual">
|
||||||
<meta name="twitter:description" content="KST4Contest manual page: {{ manual.title }}">
|
<meta name="twitter:description" content="KST4Contest manual page: {{ manual.title }}">
|
||||||
|
|
||||||
<link rel="stylesheet" href="/assets/css/main.css?v=1783425387839">
|
<link rel="stylesheet" href="/assets/css/main.css?v=1783539256714">
|
||||||
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
||||||
|
|
||||||
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
||||||
@@ -47,12 +47,12 @@
|
|||||||
|
|
||||||
<a href="/screenshots/">Screenshots</a>
|
<a href="/screenshots/">Screenshots</a>
|
||||||
|
|
||||||
<a href="/download/">Download</a>
|
|
||||||
|
|
||||||
<a href="/manual/">Manual</a>
|
<a href="/manual/">Manual</a>
|
||||||
|
|
||||||
<a href="/news/">News</a>
|
<a href="/news/">News</a>
|
||||||
|
|
||||||
|
<a href="/roadmap/">Roadmap</a>
|
||||||
|
|
||||||
<a href="/about/">About</a>
|
<a href="/about/">About</a>
|
||||||
|
|
||||||
<a href="/faq/">FAQ</a>
|
<a href="/faq/">FAQ</a>
|
||||||
|
|||||||
@@ -17,7 +17,7 @@
|
|||||||
<meta name="twitter:title" content="{{ manual.title }} | KST4Contest Manual">
|
<meta name="twitter:title" content="{{ manual.title }} | KST4Contest Manual">
|
||||||
<meta name="twitter:description" content="KST4Contest manual page: {{ manual.title }}">
|
<meta name="twitter:description" content="KST4Contest manual page: {{ manual.title }}">
|
||||||
|
|
||||||
<link rel="stylesheet" href="/assets/css/main.css?v=1783425387839">
|
<link rel="stylesheet" href="/assets/css/main.css?v=1783539256714">
|
||||||
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
||||||
|
|
||||||
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
||||||
@@ -47,12 +47,12 @@
|
|||||||
|
|
||||||
<a href="/screenshots/">Screenshots</a>
|
<a href="/screenshots/">Screenshots</a>
|
||||||
|
|
||||||
<a href="/download/">Download</a>
|
|
||||||
|
|
||||||
<a href="/manual/">Manual</a>
|
<a href="/manual/">Manual</a>
|
||||||
|
|
||||||
<a href="/news/">News</a>
|
<a href="/news/">News</a>
|
||||||
|
|
||||||
|
<a href="/roadmap/">Roadmap</a>
|
||||||
|
|
||||||
<a href="/about/">About</a>
|
<a href="/about/">About</a>
|
||||||
|
|
||||||
<a href="/faq/">FAQ</a>
|
<a href="/faq/">FAQ</a>
|
||||||
|
|||||||
@@ -17,7 +17,7 @@
|
|||||||
<meta name="twitter:title" content="{{ manual.title }} | KST4Contest Manual">
|
<meta name="twitter:title" content="{{ manual.title }} | KST4Contest Manual">
|
||||||
<meta name="twitter:description" content="KST4Contest manual page: {{ manual.title }}">
|
<meta name="twitter:description" content="KST4Contest manual page: {{ manual.title }}">
|
||||||
|
|
||||||
<link rel="stylesheet" href="/assets/css/main.css?v=1783425387839">
|
<link rel="stylesheet" href="/assets/css/main.css?v=1783539256714">
|
||||||
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
||||||
|
|
||||||
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
||||||
@@ -47,12 +47,12 @@
|
|||||||
|
|
||||||
<a href="/screenshots/">Screenshots</a>
|
<a href="/screenshots/">Screenshots</a>
|
||||||
|
|
||||||
<a href="/download/">Download</a>
|
|
||||||
|
|
||||||
<a href="/manual/">Manual</a>
|
<a href="/manual/">Manual</a>
|
||||||
|
|
||||||
<a href="/news/">News</a>
|
<a href="/news/">News</a>
|
||||||
|
|
||||||
|
<a href="/roadmap/">Roadmap</a>
|
||||||
|
|
||||||
<a href="/about/">About</a>
|
<a href="/about/">About</a>
|
||||||
|
|
||||||
<a href="/faq/">FAQ</a>
|
<a href="/faq/">FAQ</a>
|
||||||
|
|||||||
@@ -17,7 +17,7 @@
|
|||||||
<meta name="twitter:title" content="{{ manual.title }} | KST4Contest Manual">
|
<meta name="twitter:title" content="{{ manual.title }} | KST4Contest Manual">
|
||||||
<meta name="twitter:description" content="KST4Contest manual page: {{ manual.title }}">
|
<meta name="twitter:description" content="KST4Contest manual page: {{ manual.title }}">
|
||||||
|
|
||||||
<link rel="stylesheet" href="/assets/css/main.css?v=1783425387839">
|
<link rel="stylesheet" href="/assets/css/main.css?v=1783539256714">
|
||||||
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
||||||
|
|
||||||
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
||||||
@@ -47,12 +47,12 @@
|
|||||||
|
|
||||||
<a href="/screenshots/">Screenshots</a>
|
<a href="/screenshots/">Screenshots</a>
|
||||||
|
|
||||||
<a href="/download/">Download</a>
|
|
||||||
|
|
||||||
<a href="/manual/">Manual</a>
|
<a href="/manual/">Manual</a>
|
||||||
|
|
||||||
<a href="/news/">News</a>
|
<a href="/news/">News</a>
|
||||||
|
|
||||||
|
<a href="/roadmap/">Roadmap</a>
|
||||||
|
|
||||||
<a href="/about/">About</a>
|
<a href="/about/">About</a>
|
||||||
|
|
||||||
<a href="/faq/">FAQ</a>
|
<a href="/faq/">FAQ</a>
|
||||||
|
|||||||
@@ -17,7 +17,7 @@
|
|||||||
<meta name="twitter:title" content="{{ manual.title }} | KST4Contest Manual">
|
<meta name="twitter:title" content="{{ manual.title }} | KST4Contest Manual">
|
||||||
<meta name="twitter:description" content="KST4Contest manual page: {{ manual.title }}">
|
<meta name="twitter:description" content="KST4Contest manual page: {{ manual.title }}">
|
||||||
|
|
||||||
<link rel="stylesheet" href="/assets/css/main.css?v=1783425387839">
|
<link rel="stylesheet" href="/assets/css/main.css?v=1783539256714">
|
||||||
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
||||||
|
|
||||||
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
||||||
@@ -47,12 +47,12 @@
|
|||||||
|
|
||||||
<a href="/screenshots/">Screenshots</a>
|
<a href="/screenshots/">Screenshots</a>
|
||||||
|
|
||||||
<a href="/download/">Download</a>
|
|
||||||
|
|
||||||
<a href="/manual/">Manual</a>
|
<a href="/manual/">Manual</a>
|
||||||
|
|
||||||
<a href="/news/">News</a>
|
<a href="/news/">News</a>
|
||||||
|
|
||||||
|
<a href="/roadmap/">Roadmap</a>
|
||||||
|
|
||||||
<a href="/about/">About</a>
|
<a href="/about/">About</a>
|
||||||
|
|
||||||
<a href="/faq/">FAQ</a>
|
<a href="/faq/">FAQ</a>
|
||||||
|
|||||||
@@ -17,7 +17,7 @@
|
|||||||
<meta name="twitter:title" content="{{ manual.title }} | KST4Contest Manual">
|
<meta name="twitter:title" content="{{ manual.title }} | KST4Contest Manual">
|
||||||
<meta name="twitter:description" content="KST4Contest manual page: {{ manual.title }}">
|
<meta name="twitter:description" content="KST4Contest manual page: {{ manual.title }}">
|
||||||
|
|
||||||
<link rel="stylesheet" href="/assets/css/main.css?v=1783425387839">
|
<link rel="stylesheet" href="/assets/css/main.css?v=1783539256714">
|
||||||
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
||||||
|
|
||||||
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
||||||
@@ -47,12 +47,12 @@
|
|||||||
|
|
||||||
<a href="/screenshots/">Screenshots</a>
|
<a href="/screenshots/">Screenshots</a>
|
||||||
|
|
||||||
<a href="/download/">Download</a>
|
|
||||||
|
|
||||||
<a href="/manual/">Manual</a>
|
<a href="/manual/">Manual</a>
|
||||||
|
|
||||||
<a href="/news/">News</a>
|
<a href="/news/">News</a>
|
||||||
|
|
||||||
|
<a href="/roadmap/">Roadmap</a>
|
||||||
|
|
||||||
<a href="/about/">About</a>
|
<a href="/about/">About</a>
|
||||||
|
|
||||||
<a href="/faq/">FAQ</a>
|
<a href="/faq/">FAQ</a>
|
||||||
|
|||||||
@@ -17,7 +17,7 @@
|
|||||||
<meta name="twitter:title" content="KST4Contest English Manual">
|
<meta name="twitter:title" content="KST4Contest English Manual">
|
||||||
<meta name="twitter:description" content="English user manual for KST4Contest.">
|
<meta name="twitter:description" content="English user manual for KST4Contest.">
|
||||||
|
|
||||||
<link rel="stylesheet" href="/assets/css/main.css?v=1783425387839">
|
<link rel="stylesheet" href="/assets/css/main.css?v=1783539256714">
|
||||||
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
||||||
|
|
||||||
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
||||||
@@ -47,12 +47,12 @@
|
|||||||
|
|
||||||
<a href="/screenshots/">Screenshots</a>
|
<a href="/screenshots/">Screenshots</a>
|
||||||
|
|
||||||
<a href="/download/">Download</a>
|
|
||||||
|
|
||||||
<a href="/manual/">Manual</a>
|
<a href="/manual/">Manual</a>
|
||||||
|
|
||||||
<a href="/news/">News</a>
|
<a href="/news/">News</a>
|
||||||
|
|
||||||
|
<a href="/roadmap/">Roadmap</a>
|
||||||
|
|
||||||
<a href="/about/">About</a>
|
<a href="/about/">About</a>
|
||||||
|
|
||||||
<a href="/faq/">FAQ</a>
|
<a href="/faq/">FAQ</a>
|
||||||
|
|||||||
@@ -17,7 +17,7 @@
|
|||||||
<meta name="twitter:title" content="{{ manual.title }} | KST4Contest Manual">
|
<meta name="twitter:title" content="{{ manual.title }} | KST4Contest Manual">
|
||||||
<meta name="twitter:description" content="KST4Contest manual page: {{ manual.title }}">
|
<meta name="twitter:description" content="KST4Contest manual page: {{ manual.title }}">
|
||||||
|
|
||||||
<link rel="stylesheet" href="/assets/css/main.css?v=1783425387839">
|
<link rel="stylesheet" href="/assets/css/main.css?v=1783539256714">
|
||||||
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
||||||
|
|
||||||
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
||||||
@@ -47,12 +47,12 @@
|
|||||||
|
|
||||||
<a href="/screenshots/">Screenshots</a>
|
<a href="/screenshots/">Screenshots</a>
|
||||||
|
|
||||||
<a href="/download/">Download</a>
|
|
||||||
|
|
||||||
<a href="/manual/">Manual</a>
|
<a href="/manual/">Manual</a>
|
||||||
|
|
||||||
<a href="/news/">News</a>
|
<a href="/news/">News</a>
|
||||||
|
|
||||||
|
<a href="/roadmap/">Roadmap</a>
|
||||||
|
|
||||||
<a href="/about/">About</a>
|
<a href="/about/">About</a>
|
||||||
|
|
||||||
<a href="/faq/">FAQ</a>
|
<a href="/faq/">FAQ</a>
|
||||||
|
|||||||
@@ -17,7 +17,7 @@
|
|||||||
<meta name="twitter:title" content="{{ manual.title }} | KST4Contest Manual">
|
<meta name="twitter:title" content="{{ manual.title }} | KST4Contest Manual">
|
||||||
<meta name="twitter:description" content="KST4Contest manual page: {{ manual.title }}">
|
<meta name="twitter:description" content="KST4Contest manual page: {{ manual.title }}">
|
||||||
|
|
||||||
<link rel="stylesheet" href="/assets/css/main.css?v=1783425387839">
|
<link rel="stylesheet" href="/assets/css/main.css?v=1783539256714">
|
||||||
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
||||||
|
|
||||||
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
||||||
@@ -47,12 +47,12 @@
|
|||||||
|
|
||||||
<a href="/screenshots/">Screenshots</a>
|
<a href="/screenshots/">Screenshots</a>
|
||||||
|
|
||||||
<a href="/download/">Download</a>
|
|
||||||
|
|
||||||
<a href="/manual/">Manual</a>
|
<a href="/manual/">Manual</a>
|
||||||
|
|
||||||
<a href="/news/">News</a>
|
<a href="/news/">News</a>
|
||||||
|
|
||||||
|
<a href="/roadmap/">Roadmap</a>
|
||||||
|
|
||||||
<a href="/about/">About</a>
|
<a href="/about/">About</a>
|
||||||
|
|
||||||
<a href="/faq/">FAQ</a>
|
<a href="/faq/">FAQ</a>
|
||||||
|
|||||||
@@ -17,7 +17,7 @@
|
|||||||
<meta name="twitter:title" content="{{ manual.title }} | KST4Contest Manual">
|
<meta name="twitter:title" content="{{ manual.title }} | KST4Contest Manual">
|
||||||
<meta name="twitter:description" content="KST4Contest manual page: {{ manual.title }}">
|
<meta name="twitter:description" content="KST4Contest manual page: {{ manual.title }}">
|
||||||
|
|
||||||
<link rel="stylesheet" href="/assets/css/main.css?v=1783425387839">
|
<link rel="stylesheet" href="/assets/css/main.css?v=1783539256714">
|
||||||
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
||||||
|
|
||||||
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
||||||
@@ -47,12 +47,12 @@
|
|||||||
|
|
||||||
<a href="/screenshots/">Screenshots</a>
|
<a href="/screenshots/">Screenshots</a>
|
||||||
|
|
||||||
<a href="/download/">Download</a>
|
|
||||||
|
|
||||||
<a href="/manual/">Manual</a>
|
<a href="/manual/">Manual</a>
|
||||||
|
|
||||||
<a href="/news/">News</a>
|
<a href="/news/">News</a>
|
||||||
|
|
||||||
|
<a href="/roadmap/">Roadmap</a>
|
||||||
|
|
||||||
<a href="/about/">About</a>
|
<a href="/about/">About</a>
|
||||||
|
|
||||||
<a href="/faq/">FAQ</a>
|
<a href="/faq/">FAQ</a>
|
||||||
|
|||||||
@@ -17,7 +17,7 @@
|
|||||||
<meta name="twitter:title" content="{{ manual.title }} | KST4Contest Manual">
|
<meta name="twitter:title" content="{{ manual.title }} | KST4Contest Manual">
|
||||||
<meta name="twitter:description" content="KST4Contest manual page: {{ manual.title }}">
|
<meta name="twitter:description" content="KST4Contest manual page: {{ manual.title }}">
|
||||||
|
|
||||||
<link rel="stylesheet" href="/assets/css/main.css?v=1783425387839">
|
<link rel="stylesheet" href="/assets/css/main.css?v=1783539256714">
|
||||||
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
||||||
|
|
||||||
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
||||||
@@ -47,12 +47,12 @@
|
|||||||
|
|
||||||
<a href="/screenshots/">Screenshots</a>
|
<a href="/screenshots/">Screenshots</a>
|
||||||
|
|
||||||
<a href="/download/">Download</a>
|
|
||||||
|
|
||||||
<a href="/manual/">Manual</a>
|
<a href="/manual/">Manual</a>
|
||||||
|
|
||||||
<a href="/news/">News</a>
|
<a href="/news/">News</a>
|
||||||
|
|
||||||
|
<a href="/roadmap/">Roadmap</a>
|
||||||
|
|
||||||
<a href="/about/">About</a>
|
<a href="/about/">About</a>
|
||||||
|
|
||||||
<a href="/faq/">FAQ</a>
|
<a href="/faq/">FAQ</a>
|
||||||
|
|||||||
@@ -17,7 +17,7 @@
|
|||||||
<meta name="twitter:title" content="KST4Contest Manual">
|
<meta name="twitter:title" content="KST4Contest Manual">
|
||||||
<meta name="twitter:description" content="Online manual for KST4Contest, the contest-optimized ON4KST chat client.">
|
<meta name="twitter:description" content="Online manual for KST4Contest, the contest-optimized ON4KST chat client.">
|
||||||
|
|
||||||
<link rel="stylesheet" href="/assets/css/main.css?v=1783425387839">
|
<link rel="stylesheet" href="/assets/css/main.css?v=1783539256714">
|
||||||
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
||||||
|
|
||||||
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
||||||
@@ -47,12 +47,12 @@
|
|||||||
|
|
||||||
<a href="/screenshots/">Screenshots</a>
|
<a href="/screenshots/">Screenshots</a>
|
||||||
|
|
||||||
<a href="/download/">Download</a>
|
|
||||||
|
|
||||||
<a href="/manual/">Manual</a>
|
<a href="/manual/">Manual</a>
|
||||||
|
|
||||||
<a href="/news/">News</a>
|
<a href="/news/">News</a>
|
||||||
|
|
||||||
|
<a href="/roadmap/">Roadmap</a>
|
||||||
|
|
||||||
<a href="/about/">About</a>
|
<a href="/about/">About</a>
|
||||||
|
|
||||||
<a href="/faq/">FAQ</a>
|
<a href="/faq/">FAQ</a>
|
||||||
|
|||||||
@@ -17,7 +17,7 @@
|
|||||||
<meta name="twitter:title" content="KST4Contest Website Launch">
|
<meta name="twitter:title" content="KST4Contest Website Launch">
|
||||||
<meta name="twitter:description" content="Contest-optimized ON4KST chat client for VHF, UHF and SHF ham radio contests.">
|
<meta name="twitter:description" content="Contest-optimized ON4KST chat client for VHF, UHF and SHF ham radio contests.">
|
||||||
|
|
||||||
<link rel="stylesheet" href="/assets/css/main.css?v=1783425387839">
|
<link rel="stylesheet" href="/assets/css/main.css?v=1783539256714">
|
||||||
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
||||||
|
|
||||||
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
||||||
@@ -47,12 +47,12 @@
|
|||||||
|
|
||||||
<a href="/screenshots/">Screenshots</a>
|
<a href="/screenshots/">Screenshots</a>
|
||||||
|
|
||||||
<a href="/download/">Download</a>
|
|
||||||
|
|
||||||
<a href="/manual/">Manual</a>
|
<a href="/manual/">Manual</a>
|
||||||
|
|
||||||
<a href="/news/">News</a>
|
<a href="/news/">News</a>
|
||||||
|
|
||||||
|
<a href="/roadmap/">Roadmap</a>
|
||||||
|
|
||||||
<a href="/about/">About</a>
|
<a href="/about/">About</a>
|
||||||
|
|
||||||
<a href="/faq/">FAQ</a>
|
<a href="/faq/">FAQ</a>
|
||||||
|
|||||||
@@ -17,7 +17,7 @@
|
|||||||
<meta name="twitter:title" content="KST4Contest News">
|
<meta name="twitter:title" content="KST4Contest News">
|
||||||
<meta name="twitter:description" content="News, release updates and development notes for KST4Contest.">
|
<meta name="twitter:description" content="News, release updates and development notes for KST4Contest.">
|
||||||
|
|
||||||
<link rel="stylesheet" href="/assets/css/main.css?v=1783425387839">
|
<link rel="stylesheet" href="/assets/css/main.css?v=1783539256714">
|
||||||
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
||||||
|
|
||||||
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
||||||
@@ -47,12 +47,12 @@
|
|||||||
|
|
||||||
<a href="/screenshots/">Screenshots</a>
|
<a href="/screenshots/">Screenshots</a>
|
||||||
|
|
||||||
<a href="/download/">Download</a>
|
|
||||||
|
|
||||||
<a href="/manual/">Manual</a>
|
<a href="/manual/">Manual</a>
|
||||||
|
|
||||||
<a href="/news/">News</a>
|
<a href="/news/">News</a>
|
||||||
|
|
||||||
|
<a href="/roadmap/">Roadmap</a>
|
||||||
|
|
||||||
<a href="/about/">About</a>
|
<a href="/about/">About</a>
|
||||||
|
|
||||||
<a href="/faq/">FAQ</a>
|
<a href="/faq/">FAQ</a>
|
||||||
|
|||||||
@@ -17,7 +17,7 @@
|
|||||||
<meta name="twitter:title" content="Privacy Policy | KST4Contest">
|
<meta name="twitter:title" content="Privacy Policy | KST4Contest">
|
||||||
<meta name="twitter:description" content="Privacy policy for the KST4Contest website.">
|
<meta name="twitter:description" content="Privacy policy for the KST4Contest website.">
|
||||||
|
|
||||||
<link rel="stylesheet" href="/assets/css/main.css?v=1783425387839">
|
<link rel="stylesheet" href="/assets/css/main.css?v=1783539256714">
|
||||||
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
||||||
|
|
||||||
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
||||||
@@ -47,12 +47,12 @@
|
|||||||
|
|
||||||
<a href="/screenshots/">Screenshots</a>
|
<a href="/screenshots/">Screenshots</a>
|
||||||
|
|
||||||
<a href="/download/">Download</a>
|
|
||||||
|
|
||||||
<a href="/manual/">Manual</a>
|
<a href="/manual/">Manual</a>
|
||||||
|
|
||||||
<a href="/news/">News</a>
|
<a href="/news/">News</a>
|
||||||
|
|
||||||
|
<a href="/roadmap/">Roadmap</a>
|
||||||
|
|
||||||
<a href="/about/">About</a>
|
<a href="/about/">About</a>
|
||||||
|
|
||||||
<a href="/faq/">FAQ</a>
|
<a href="/faq/">FAQ</a>
|
||||||
|
|||||||
@@ -0,0 +1,189 @@
|
|||||||
|
<!doctype html>
|
||||||
|
<html lang="en">
|
||||||
|
<head>
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<title>KST4Contest Roadmap</title>
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||||
|
<meta name="description" content="Planned enhancements for upcoming KST4Contest versions, generated from GitHub milestones and issues.">
|
||||||
|
<link rel="canonical" href="https://kst4contest.hamradioonline.de/roadmap/">
|
||||||
|
|
||||||
|
<meta property="og:type" content="website">
|
||||||
|
<meta property="og:title" content="KST4Contest Roadmap">
|
||||||
|
<meta property="og:description" content="Planned enhancements for upcoming KST4Contest versions, generated from GitHub milestones and issues.">
|
||||||
|
<meta property="og:url" content="https://kst4contest.hamradioonline.de/roadmap/">
|
||||||
|
<meta property="og:site_name" content="KST4Contest">
|
||||||
|
|
||||||
|
<meta name="twitter:card" content="summary_large_image">
|
||||||
|
<meta name="twitter:title" content="KST4Contest Roadmap">
|
||||||
|
<meta name="twitter:description" content="Planned enhancements for upcoming KST4Contest versions, generated from GitHub milestones and issues.">
|
||||||
|
|
||||||
|
<link rel="stylesheet" href="/assets/css/main.css?v=1783539256714">
|
||||||
|
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
||||||
|
|
||||||
|
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
||||||
|
<meta property="og:image:width" content="1200">
|
||||||
|
<meta property="og:image:height" content="630">
|
||||||
|
<meta name="twitter:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
||||||
|
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<div class="site-bg"></div>
|
||||||
|
|
||||||
|
<header class="site-header">
|
||||||
|
<a class="brand" href="/">
|
||||||
|
<span class="brand-mark">◎</span>
|
||||||
|
<span>
|
||||||
|
<strong>KST4Contest</strong>
|
||||||
|
<small>ON4KST Contest Client</small>
|
||||||
|
</span>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
<nav class="site-nav">
|
||||||
|
|
||||||
|
<a href="/">Home</a>
|
||||||
|
|
||||||
|
<a href="/features/">Features</a>
|
||||||
|
|
||||||
|
<a href="/screenshots/">Screenshots</a>
|
||||||
|
|
||||||
|
<a href="/manual/">Manual</a>
|
||||||
|
|
||||||
|
<a href="/news/">News</a>
|
||||||
|
|
||||||
|
<a href="/roadmap/">Roadmap</a>
|
||||||
|
|
||||||
|
<a href="/about/">About</a>
|
||||||
|
|
||||||
|
<a href="/faq/">FAQ</a>
|
||||||
|
|
||||||
|
<a class="nav-cta" href="/download/">Download</a>
|
||||||
|
</nav>
|
||||||
|
</header>
|
||||||
|
|
||||||
|
<main>
|
||||||
|
|
||||||
|
<section class="hero">
|
||||||
|
<p class="badge">Roadmap</p>
|
||||||
|
<h1>What's planned next.</h1>
|
||||||
|
<p class="lead">
|
||||||
|
Generated automatically from the "enhancement" issues in our
|
||||||
|
<a href="https://github.com/praktimarc/kst4contest">GitHub repository</a>,
|
||||||
|
grouped by their target version milestone.
|
||||||
|
</p>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section class="section narrow">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<article class="card content-card">
|
||||||
|
|
||||||
|
<h2><a href="https://github.com/praktimarc/kst4contest/milestone/2">v1.42</a></h2>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<ul>
|
||||||
|
|
||||||
|
<li>
|
||||||
|
<a href="https://github.com/praktimarc/kst4contest/issues/22">Displaying where an Station is active.</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
</article>
|
||||||
|
|
||||||
|
<article class="card content-card">
|
||||||
|
|
||||||
|
<h2><a href="https://github.com/praktimarc/kst4contest/milestone/1">v1.41</a></h2>
|
||||||
|
|
||||||
|
<p>next Version 1.41</p>
|
||||||
|
|
||||||
|
<p class="eyebrow">Released July 6, 2026</p>
|
||||||
|
|
||||||
|
<ul>
|
||||||
|
|
||||||
|
<li class="roadmap-done">
|
||||||
|
<a href="https://github.com/praktimarc/kst4contest/issues/23">Score of Top-Priority Candidates in the user section</a> ✓
|
||||||
|
</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
</article>
|
||||||
|
|
||||||
|
<article class="card content-card">
|
||||||
|
|
||||||
|
<h2>Planned, no version yet</h2>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<ul>
|
||||||
|
|
||||||
|
<li>
|
||||||
|
<a href="https://github.com/praktimarc/kst4contest/issues/55">[FEATURE] Reset-Button for the map</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li>
|
||||||
|
<a href="https://github.com/praktimarc/kst4contest/issues/52">[FEATURE] center horizontal slider</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li>
|
||||||
|
<a href="https://github.com/praktimarc/kst4contest/issues/49">[FEATURE] QTF degree, manual change</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li>
|
||||||
|
<a href="https://github.com/praktimarc/kst4contest/issues/47">[FEATURE] Sked push for UCXLOG</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li>
|
||||||
|
<a href="https://github.com/praktimarc/kst4contest/issues/46">[FEATURE] SO2R Operation</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li>
|
||||||
|
<a href="https://github.com/praktimarc/kst4contest/issues/21">QRB greater than Distance Button in the Userfield</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li>
|
||||||
|
<a href="https://github.com/praktimarc/kst4contest/issues/20">i18n - Possible Translations?</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li class="roadmap-done">
|
||||||
|
<a href="https://github.com/praktimarc/kst4contest/issues/19">Broadcast Messages (To ALL Station in Contest) in seperate Window</a> (not planned)
|
||||||
|
</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
</article>
|
||||||
|
|
||||||
|
</section>
|
||||||
|
|
||||||
|
</main>
|
||||||
|
|
||||||
|
<footer class="site-footer">
|
||||||
|
<div class="footer-grid">
|
||||||
|
<div>
|
||||||
|
<strong>KST4Contest</strong>
|
||||||
|
<p>Contest-optimized ON4KST workflow for VHF/UHF/SHF operators.</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div>
|
||||||
|
<strong>Project</strong>
|
||||||
|
<p><a href="/features/">Features</a></p>
|
||||||
|
<p><a href="/download/">Download</a></p>
|
||||||
|
<p><a href="/manual/">Manual</a></p>
|
||||||
|
<p><a href="/roadmap/">Roadmap</a></p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div>
|
||||||
|
<strong>Community</strong>
|
||||||
|
<p><a href="https://github.com/praktimarc/kst4contest">GitHub Repository</a></p>
|
||||||
|
<p><a href="https://github.com/praktimarc/kst4contest/issues">Issues</a></p>
|
||||||
|
<p><a href="/contact/">Contact</a></p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div>
|
||||||
|
<strong>Legal</strong>
|
||||||
|
<p><a href="/legal-notice/">Legal Notice</a></p>
|
||||||
|
<p><a href="/privacy/">Privacy Policy</a></p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</footer>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
@@ -17,7 +17,7 @@
|
|||||||
<meta name="twitter:title" content="KST4Contest Screenshots">
|
<meta name="twitter:title" content="KST4Contest Screenshots">
|
||||||
<meta name="twitter:description" content="Screenshots of KST4Contest, the contest-optimized ON4KST chat client for VHF, UHF and SHF operators.">
|
<meta name="twitter:description" content="Screenshots of KST4Contest, the contest-optimized ON4KST chat client for VHF, UHF and SHF operators.">
|
||||||
|
|
||||||
<link rel="stylesheet" href="/assets/css/main.css?v=1783425387839">
|
<link rel="stylesheet" href="/assets/css/main.css?v=1783539256714">
|
||||||
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
<link rel="alternate" type="application/rss+xml" title="KST4Contest News" href="/feed.xml">
|
||||||
|
|
||||||
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
<meta property="og:image" content="https://kst4contest.hamradioonline.de/assets/social/kst4contest-og.png">
|
||||||
@@ -47,12 +47,12 @@
|
|||||||
|
|
||||||
<a href="/screenshots/">Screenshots</a>
|
<a href="/screenshots/">Screenshots</a>
|
||||||
|
|
||||||
<a href="/download/">Download</a>
|
|
||||||
|
|
||||||
<a href="/manual/">Manual</a>
|
<a href="/manual/">Manual</a>
|
||||||
|
|
||||||
<a href="/news/">News</a>
|
<a href="/news/">News</a>
|
||||||
|
|
||||||
|
<a href="/roadmap/">Roadmap</a>
|
||||||
|
|
||||||
<a href="/about/">About</a>
|
<a href="/about/">About</a>
|
||||||
|
|
||||||
<a href="/faq/">FAQ</a>
|
<a href="/faq/">FAQ</a>
|
||||||
|
|||||||
@@ -88,4 +88,8 @@
|
|||||||
<loc>https://kst4contest.hamradioonline.de/download/</loc>
|
<loc>https://kst4contest.hamradioonline.de/download/</loc>
|
||||||
<lastmod>2026-07-07</lastmod>
|
<lastmod>2026-07-07</lastmod>
|
||||||
</url>
|
</url>
|
||||||
|
<url>
|
||||||
|
<loc>https://kst4contest.hamradioonline.de/roadmap/</loc>
|
||||||
|
<lastmod>2026-07-08</lastmod>
|
||||||
|
</url>
|
||||||
</urlset>
|
</urlset>
|
||||||
@@ -4,6 +4,7 @@ module.exports = [
|
|||||||
{ title: "Screenshots", url: "/screenshots/" },
|
{ title: "Screenshots", url: "/screenshots/" },
|
||||||
{ title: "Manual", url: "/manual/" },
|
{ title: "Manual", url: "/manual/" },
|
||||||
{ title: "News", url: "/news/" },
|
{ title: "News", url: "/news/" },
|
||||||
|
{ title: "Roadmap", url: "/roadmap/" },
|
||||||
{ title: "About", url: "/about/" },
|
{ title: "About", url: "/about/" },
|
||||||
{ title: "FAQ", url: "/faq/" }
|
{ title: "FAQ", url: "/faq/" }
|
||||||
];
|
];
|
||||||
@@ -0,0 +1,84 @@
|
|||||||
|
const REPO = "praktimarc/kst4contest";
|
||||||
|
const API = `https://api.github.com/repos/${REPO}`;
|
||||||
|
|
||||||
|
async function githubGet(path) {
|
||||||
|
const headers = { Accept: "application/vnd.github+json" };
|
||||||
|
if (process.env.GITHUB_TOKEN) {
|
||||||
|
headers.Authorization = `Bearer ${process.env.GITHUB_TOKEN}`;
|
||||||
|
}
|
||||||
|
const res = await fetch(`${API}${path}`, { headers });
|
||||||
|
if (!res.ok) {
|
||||||
|
throw new Error(`GitHub API ${path} failed: ${res.status}`);
|
||||||
|
}
|
||||||
|
return res.json();
|
||||||
|
}
|
||||||
|
|
||||||
|
// Builds the roadmap from all GitHub issues tagged "enhancement", grouped by
|
||||||
|
// their version milestone (open or already released). Issues without a
|
||||||
|
// milestone are shown as planned but with no assigned version yet. Issues
|
||||||
|
// closed as "not planned" are kept, struck through and labeled accordingly.
|
||||||
|
// Falls back to an empty list if the API is unreachable (e.g. offline build)
|
||||||
|
// so the site build never fails.
|
||||||
|
module.exports = async function () {
|
||||||
|
try {
|
||||||
|
const issues = await githubGet(
|
||||||
|
"/issues?labels=enhancement&state=all&per_page=100"
|
||||||
|
);
|
||||||
|
|
||||||
|
const groups = new Map();
|
||||||
|
|
||||||
|
for (const issue of issues) {
|
||||||
|
if (issue.pull_request) continue;
|
||||||
|
|
||||||
|
const milestone = issue.milestone;
|
||||||
|
const key = milestone ? milestone.number : "unscheduled";
|
||||||
|
|
||||||
|
if (!groups.has(key)) {
|
||||||
|
groups.set(key, {
|
||||||
|
version: milestone ? milestone.title : null,
|
||||||
|
description: milestone ? milestone.description : null,
|
||||||
|
url: milestone ? milestone.html_url : null,
|
||||||
|
released: milestone ? milestone.state === "closed" : false,
|
||||||
|
dueOn: milestone && milestone.due_on ? new Date(milestone.due_on) : null,
|
||||||
|
releasedOn: milestone && milestone.closed_at ? new Date(milestone.closed_at) : null,
|
||||||
|
enhancements: []
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
const notPlanned = issue.state === "closed" && issue.state_reason === "not_planned";
|
||||||
|
|
||||||
|
groups.get(key).enhancements.push({
|
||||||
|
title: issue.title,
|
||||||
|
url: issue.html_url,
|
||||||
|
done: issue.state === "closed" && !notPlanned,
|
||||||
|
notPlanned
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
const versions = [...groups.values()].filter((v) => v.enhancements.length > 0);
|
||||||
|
|
||||||
|
// Order: upcoming dated versions first (soonest due date), then
|
||||||
|
// upcoming undated versions, then already released versions (newest
|
||||||
|
// first), unscheduled enhancements at the very end.
|
||||||
|
versions.sort((a, b) => {
|
||||||
|
if (!a.version) return 1;
|
||||||
|
if (!b.version) return -1;
|
||||||
|
if (a.released !== b.released) return a.released ? 1 : -1;
|
||||||
|
|
||||||
|
if (!a.released) {
|
||||||
|
if (a.dueOn && b.dueOn) return a.dueOn - b.dueOn;
|
||||||
|
if (a.dueOn) return -1;
|
||||||
|
if (b.dueOn) return 1;
|
||||||
|
return a.version.localeCompare(b.version);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (a.releasedOn && b.releasedOn) return b.releasedOn - a.releasedOn;
|
||||||
|
return b.version.localeCompare(a.version);
|
||||||
|
});
|
||||||
|
|
||||||
|
return versions;
|
||||||
|
} catch (err) {
|
||||||
|
console.warn(`[roadmap] Could not load GitHub issues: ${err.message}`);
|
||||||
|
return [];
|
||||||
|
}
|
||||||
|
};
|
||||||
@@ -415,6 +415,11 @@ a:hover {
|
|||||||
color: var(--muted);
|
color: var(--muted);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.roadmap-done a {
|
||||||
|
color: var(--muted);
|
||||||
|
text-decoration: line-through;
|
||||||
|
}
|
||||||
|
|
||||||
.feature-icon {
|
.feature-icon {
|
||||||
font-size: 2rem;
|
font-size: 2rem;
|
||||||
margin-bottom: 14px;
|
margin-bottom: 14px;
|
||||||
|
|||||||
@@ -0,0 +1,50 @@
|
|||||||
|
---
|
||||||
|
layout: base.njk
|
||||||
|
title: KST4Contest Roadmap
|
||||||
|
description: Planned enhancements for upcoming KST4Contest versions, generated from GitHub milestones and issues.
|
||||||
|
---
|
||||||
|
|
||||||
|
<section class="hero">
|
||||||
|
<p class="badge">Roadmap</p>
|
||||||
|
<h1>What's planned next.</h1>
|
||||||
|
<p class="lead">
|
||||||
|
Generated automatically from the "enhancement" issues in our
|
||||||
|
<a href="https://github.com/praktimarc/kst4contest">GitHub repository</a>,
|
||||||
|
grouped by their target version milestone.
|
||||||
|
</p>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section class="section narrow">
|
||||||
|
{% if roadmap.length == 0 %}
|
||||||
|
<article class="card content-card">
|
||||||
|
<p>No planned enhancements are currently assigned to a version milestone.</p>
|
||||||
|
<p>
|
||||||
|
See all open feature requests on
|
||||||
|
<a href="https://github.com/praktimarc/kst4contest/issues?q=is%3Aissue+is%3Aopen+label%3Aenhancement">GitHub</a>.
|
||||||
|
</p>
|
||||||
|
</article>
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
{% for version in roadmap %}
|
||||||
|
<article class="card content-card">
|
||||||
|
{% if version.version %}
|
||||||
|
<h2><a href="{{ version.url }}">{{ version.version }}</a></h2>
|
||||||
|
{% else %}
|
||||||
|
<h2>Planned, no version yet</h2>
|
||||||
|
{% endif %}
|
||||||
|
{% if version.description %}<p>{{ version.description }}</p>{% endif %}
|
||||||
|
{% if version.released %}
|
||||||
|
<p class="eyebrow">Released{% if version.releasedOn %} {{ version.releasedOn | readableDate }}{% endif %}</p>
|
||||||
|
{% elif version.dueOn %}
|
||||||
|
<p class="eyebrow">Due {{ version.dueOn | readableDate }}</p>
|
||||||
|
{% endif %}
|
||||||
|
<ul>
|
||||||
|
{% for item in version.enhancements %}
|
||||||
|
<li{% if item.done or item.notPlanned %} class="roadmap-done"{% endif %}>
|
||||||
|
<a href="{{ item.url }}">{{ item.title }}</a>{% if item.done %} ✓{% endif %}{% if item.notPlanned %} (not planned){% endif %}
|
||||||
|
</li>
|
||||||
|
{% endfor %}
|
||||||
|
</ul>
|
||||||
|
</article>
|
||||||
|
{% endfor %}
|
||||||
|
</section>
|
||||||
Reference in New Issue
Block a user