From 805f30f2b26d325cd772efc3cb30cb50a8e4c226 Mon Sep 17 00:00:00 2001
From: nsfisis <nsfisis@gmail.com>
Date: Sun, 15 Feb 2026 16:23:06 +0900
Subject: feat(ui): add version display in app footer

Inject package.json version via Vite's define config and display
it in a persistent footer across all pages.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
---
 src/client/App.tsx | 67 +++++++++++++++++++++++++++++-------------------------
 1 file changed, 36 insertions(+), 31 deletions(-)

(limited to 'src/client/App.tsx')

diff --git a/src/client/App.tsx b/src/client/App.tsx
index 69af60f..8da919d 100644
--- a/src/client/App.tsx
+++ b/src/client/App.tsx
@@ -12,37 +12,42 @@ import {
 
 export function App() {
 	return (
-		<>
+		<div className="min-h-screen flex flex-col">
 			<OfflineBanner />
-			<Switch>
-				<Route path="/">
-					<ProtectedRoute>
-						<HomePage />
-					</ProtectedRoute>
-				</Route>
-				<Route path="/decks/:deckId/cards">
-					<ProtectedRoute>
-						<DeckCardsPage />
-					</ProtectedRoute>
-				</Route>
-				<Route path="/decks/:deckId/study">
-					<ProtectedRoute>
-						<StudyPage />
-					</ProtectedRoute>
-				</Route>
-				<Route path="/decks/:deckId">
-					<ProtectedRoute>
-						<DeckDetailPage />
-					</ProtectedRoute>
-				</Route>
-				<Route path="/note-types">
-					<ProtectedRoute>
-						<NoteTypesPage />
-					</ProtectedRoute>
-				</Route>
-				<Route path="/login" component={LoginPage} />
-				<Route component={NotFoundPage} />
-			</Switch>
-		</>
+			<div className="flex-1">
+				<Switch>
+					<Route path="/">
+						<ProtectedRoute>
+							<HomePage />
+						</ProtectedRoute>
+					</Route>
+					<Route path="/decks/:deckId/cards">
+						<ProtectedRoute>
+							<DeckCardsPage />
+						</ProtectedRoute>
+					</Route>
+					<Route path="/decks/:deckId/study">
+						<ProtectedRoute>
+							<StudyPage />
+						</ProtectedRoute>
+					</Route>
+					<Route path="/decks/:deckId">
+						<ProtectedRoute>
+							<DeckDetailPage />
+						</ProtectedRoute>
+					</Route>
+					<Route path="/note-types">
+						<ProtectedRoute>
+							<NoteTypesPage />
+						</ProtectedRoute>
+					</Route>
+					<Route path="/login" component={LoginPage} />
+					<Route component={NotFoundPage} />
+				</Switch>
+			</div>
+			<footer className="py-2 text-center text-xs text-muted">
+				v{__APP_VERSION__}
+			</footer>
+		</div>
 	);
 }
-- 
cgit v1.3-1-g0d28

