From 60a3e917e3457f35729abd1e452c5b4231885833 Mon Sep 17 00:00:00 2001
From: nsfisis <nsfisis@gmail.com>
Date: Wed, 9 Jul 2025 19:54:46 +0900
Subject: feat(frontend): initialize frontend with Vite template

---
 frontend/src/App.tsx | 35 +++++++++++++++++++++++++++++++++++
 1 file changed, 35 insertions(+)
 create mode 100644 frontend/src/App.tsx

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

diff --git a/frontend/src/App.tsx b/frontend/src/App.tsx
new file mode 100644
index 0000000..e279784
--- /dev/null
+++ b/frontend/src/App.tsx
@@ -0,0 +1,35 @@
+import { useState } from "react";
+import viteLogo from "/vite.svg";
+import reactLogo from "./assets/react.svg";
+import "./App.css";
+
+function App() {
+	const [count, setCount] = useState(0);
+
+	return (
+		<>
+			<div>
+				<a href="https://vite.dev" target="_blank" rel="noopener">
+					<img src={viteLogo} className="logo" alt="Vite logo" />
+				</a>
+				<a href="https://react.dev" target="_blank" rel="noopener">
+					<img src={reactLogo} className="logo react" alt="React logo" />
+				</a>
+			</div>
+			<h1>Vite + React</h1>
+			<div className="card">
+				<button type="button" onClick={() => setCount((count) => count + 1)}>
+					count is {count}
+				</button>
+				<p>
+					Edit <code>src/App.tsx</code> and save to test HMR
+				</p>
+			</div>
+			<p className="read-the-docs">
+				Click on the Vite and React logos to learn more
+			</p>
+		</>
+	);
+}
+
+export default App;
-- 
cgit v1.2.3-70-g09d2

