chore: React + Vite + Tailwind CSS 脚手架
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
parent
b3be6f5f03
commit
8fa85966e0
@ -5,8 +5,8 @@
|
|||||||
"scripts": {
|
"scripts": {
|
||||||
"start": "electron .",
|
"start": "electron .",
|
||||||
"dev": "concurrently \"npm run dev:renderer\" \"wait-on http://localhost:5173 && electron .\"",
|
"dev": "concurrently \"npm run dev:renderer\" \"wait-on http://localhost:5173 && electron .\"",
|
||||||
"dev:renderer": "vite --config renderer/vite.config.js",
|
"dev:renderer": "vite --config renderer/vite.config.mjs",
|
||||||
"build": "vite build --config renderer/vite.config.js && electron-builder",
|
"build": "vite build --config renderer/vite.config.mjs && electron-builder",
|
||||||
"test": "cd /Users/mikivl/workspace/excel-batch-editor && python3 -m pytest tests/python/ -v"
|
"test": "cd /Users/mikivl/workspace/excel-batch-editor && python3 -m pytest tests/python/ -v"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
|
|||||||
12
renderer/index.html
Normal file
12
renderer/index.html
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="zh">
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8" />
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||||
|
<title>Excel 批量编辑器</title>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div id="root"></div>
|
||||||
|
<script type="module" src="/src/main.jsx"></script>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
19
renderer/src/App.jsx
Normal file
19
renderer/src/App.jsx
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
import React from "react";
|
||||||
|
import { MemoryRouter, Routes, Route, Navigate } from "react-router-dom";
|
||||||
|
import TemplateList from "./pages/TemplateList";
|
||||||
|
import TemplateConfig from "./pages/TemplateConfig";
|
||||||
|
import Generate from "./pages/Generate";
|
||||||
|
|
||||||
|
export default function App() {
|
||||||
|
return (
|
||||||
|
<MemoryRouter>
|
||||||
|
<Routes>
|
||||||
|
<Route path="/" element={<Navigate to="/templates" replace />} />
|
||||||
|
<Route path="/templates" element={<TemplateList />} />
|
||||||
|
<Route path="/templates/new" element={<TemplateConfig />} />
|
||||||
|
<Route path="/templates/:id/edit" element={<TemplateConfig />} />
|
||||||
|
<Route path="/generate" element={<Generate />} />
|
||||||
|
</Routes>
|
||||||
|
</MemoryRouter>
|
||||||
|
);
|
||||||
|
}
|
||||||
1
renderer/src/index.css
Normal file
1
renderer/src/index.css
Normal file
@ -0,0 +1 @@
|
|||||||
|
@import "tailwindcss";
|
||||||
6
renderer/src/main.jsx
Normal file
6
renderer/src/main.jsx
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
import React from "react";
|
||||||
|
import ReactDOM from "react-dom/client";
|
||||||
|
import App from "./App";
|
||||||
|
import "./index.css";
|
||||||
|
|
||||||
|
ReactDOM.createRoot(document.getElementById("root")).render(<App />);
|
||||||
1
renderer/src/pages/Generate.jsx
Normal file
1
renderer/src/pages/Generate.jsx
Normal file
@ -0,0 +1 @@
|
|||||||
|
export default function Generate() { return <div>Generate</div>; }
|
||||||
1
renderer/src/pages/TemplateConfig.jsx
Normal file
1
renderer/src/pages/TemplateConfig.jsx
Normal file
@ -0,0 +1 @@
|
|||||||
|
export default function TemplateConfig() { return <div>TemplateConfig</div>; }
|
||||||
1
renderer/src/pages/TemplateList.jsx
Normal file
1
renderer/src/pages/TemplateList.jsx
Normal file
@ -0,0 +1 @@
|
|||||||
|
export default function TemplateList() { return <div>TemplateList</div>; }
|
||||||
14
renderer/vite.config.mjs
Normal file
14
renderer/vite.config.mjs
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
import { defineConfig } from "vite";
|
||||||
|
import react from "@vitejs/plugin-react";
|
||||||
|
import tailwindcss from "@tailwindcss/vite";
|
||||||
|
|
||||||
|
export default defineConfig({
|
||||||
|
plugins: [react(), tailwindcss()],
|
||||||
|
build: {
|
||||||
|
outDir: "dist",
|
||||||
|
emptyOutDir: true,
|
||||||
|
},
|
||||||
|
server: {
|
||||||
|
port: 5173,
|
||||||
|
},
|
||||||
|
});
|
||||||
Loading…
x
Reference in New Issue
Block a user