From 3c0335ae7c7c8dbc3fc912e1bf91b0bcade23cb4 Mon Sep 17 00:00:00 2001 From: Sven Carstensen Date: Tue, 17 Mar 2026 17:43:18 +0100 Subject: [PATCH] feat: Add version number to homepage footer - Create version.ts in lib folder with APP_VERSION constant - Add version footer to HomePage - Add CSS styling for version footer - Starting version: 0.8.0 --- frontend/src/lib/version.ts | 14 ++++++++++++++ frontend/src/pages/HomePage.tsx | 6 ++++++ frontend/src/styles/global.css | 13 +++++++++++++ 3 files changed, 33 insertions(+) create mode 100644 frontend/src/lib/version.ts diff --git a/frontend/src/lib/version.ts b/frontend/src/lib/version.ts new file mode 100644 index 0000000..734967c --- /dev/null +++ b/frontend/src/lib/version.ts @@ -0,0 +1,14 @@ +/** + * Application Version + * + * Semantic Versioning: MAJOR.MINOR.PATCH + * - MAJOR: Incompatible API changes + * - MINOR: New functionality (backward compatible) + * - PATCH: Bug fixes (backward compatible) + */ +export const APP_VERSION = "0.8.0"; + +/** + * Build date - set at build time + */ +export const BUILD_DATE = new Date().toISOString().split('T')[0]; diff --git a/frontend/src/pages/HomePage.tsx b/frontend/src/pages/HomePage.tsx index 262f0ba..8e62114 100644 --- a/frontend/src/pages/HomePage.tsx +++ b/frontend/src/pages/HomePage.tsx @@ -1,6 +1,7 @@ import { FormEvent, useEffect, useState } from "react"; import { useNavigate } from "react-router-dom"; import { apiGet } from "../lib/api"; +import { APP_VERSION } from "../lib/version"; import type { DashboardOverview, LookupResult } from "../lib/types"; function formatDate(value: string) { @@ -174,6 +175,11 @@ export default function HomePage() {
Noch keine Proben vorhanden.
)} + + {/* Version Footer */} + ); } diff --git a/frontend/src/styles/global.css b/frontend/src/styles/global.css index aa9bdd9..7a42dd7 100644 --- a/frontend/src/styles/global.css +++ b/frontend/src/styles/global.css @@ -1564,3 +1564,16 @@ a { grid-template-columns: 1fr; } } + +/* Version Footer */ +.version-footer { + text-align: center; + padding: 24px 0; + color: var(--muted); + font-size: 0.85rem; + opacity: 0.7; +} + +.version-footer span { + font-weight: 500; +}