From 3331536ddd0c22d46be353d40d08821ee3970229 Mon Sep 17 00:00:00 2001 From: Alexander Bocken Date: Tue, 19 May 2026 10:04:45 +0200 Subject: [PATCH] feat(hikes): show tags + relegate GPX download to a quiet meta footer MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Tag chips slot between the metric tiles and the elevation profile — muted pills with a hash prefix so they read as framing context, not another row of glance-info competing with the numbers. The standalone "GPX herunterladen" pill (centred, primary-styled, above the photo strip) moves into a small footer at the bottom of the article, grouped with waypoint count, publish date, and the required swisstopo attribution. GPX is a power-user export, not a CTA — placing it with other ancillary metadata matches its weight. --- package.json | 2 +- src/routes/hikes/[slug]/+page.svelte | 187 ++++++++++++++++++++------- 2 files changed, 142 insertions(+), 47 deletions(-) diff --git a/package.json b/package.json index 7c8e5ac7..15052c3c 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "homepage", - "version": "1.75.1", + "version": "1.75.2", "private": true, "type": "module", "scripts": { diff --git a/src/routes/hikes/[slug]/+page.svelte b/src/routes/hikes/[slug]/+page.svelte index 5e506e29..0720ffac 100644 --- a/src/routes/hikes/[slug]/+page.svelte +++ b/src/routes/hikes/[slug]/+page.svelte @@ -52,6 +52,18 @@ const canton = $derived(resolveCanton(hike.canton)); + // Publish date formatted in long German for the meta footer + // (matches the hike's `date: YYYY-MM-DD` frontmatter format). + const publishedLabel = $derived.by(() => { + const t = Date.parse(hike.date); + if (!Number.isFinite(t)) return null; + return new Date(t).toLocaleDateString('de-CH', { + day: 'numeric', + month: 'long', + year: 'numeric' + }); + }); + const heroPose = $derived.by(() => { if ( narrowViewport && @@ -409,25 +421,23 @@ {/if} + {#if hike.tags.length > 0} + +
+ {#each hike.tags as tag (tag)} + {tag} + {/each} +
+ {/if} + {#if track && track.length > 0}
{/if} -
- -
- {#if track && track.length > 0 && visibleImagePoints.length > 0}
@@ -446,6 +456,36 @@
+ + +