From 92b595581e5988cd57ebeb982a70c85bfef498c3 Mon Sep 17 00:00:00 2001 From: nsfisis Date: Sat, 6 Dec 2025 17:38:08 +0900 Subject: feat(client): initialize React + Vite frontend foundation MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Set up the client-side React application with Vite bundler: - Add React 19 and Vite 7 with the React plugin - Create index.html entry point and App component - Configure Vite with API proxy to backend server - Add client build scripts to package.json - Update tsconfig for React JSX and DOM types - Fix TypeScript errors in auth code (JWT_SECRET type narrowing) 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --- src/client/App.tsx | 8 ++++++++ src/client/index.tsx | 2 +- src/client/main.tsx | 14 ++++++++++++++ 3 files changed, 23 insertions(+), 1 deletion(-) create mode 100644 src/client/App.tsx create mode 100644 src/client/main.tsx (limited to 'src/client') diff --git a/src/client/App.tsx b/src/client/App.tsx new file mode 100644 index 0000000..fa42302 --- /dev/null +++ b/src/client/App.tsx @@ -0,0 +1,8 @@ +export function App() { + return ( +
+

Kioku

+

Spaced repetition learning app

+
+ ); +} diff --git a/src/client/index.tsx b/src/client/index.tsx index cb0ff5c..713869c 100644 --- a/src/client/index.tsx +++ b/src/client/index.tsx @@ -1 +1 @@ -export {}; +export { App } from "./App"; diff --git a/src/client/main.tsx b/src/client/main.tsx new file mode 100644 index 0000000..1e185be --- /dev/null +++ b/src/client/main.tsx @@ -0,0 +1,14 @@ +import { StrictMode } from "react"; +import { createRoot } from "react-dom/client"; +import { App } from "./App"; + +const rootElement = document.getElementById("root"); +if (!rootElement) { + throw new Error("Root element not found"); +} + +createRoot(rootElement).render( + + + , +); -- cgit v1.2.3-70-g09d2