summaryrefslogtreecommitdiff
path: root/vite.config.ts
diff options
context:
space:
mode:
authorSolstice <solstice@local>2026-06-09 00:06:42 -0700
committerSolstice <solstice@local>2026-06-09 00:06:42 -0700
commit59708192eb000770ede58f21e5a397c65875eb3b (patch)
tree15c270cc1bb7e62094f45af0a91aa335c4e51ed2 /vite.config.ts
chore: initial project scaffolding
- Tauri v2 + React + TypeScript (Vite) - Tailwind CSS v4 via @tailwindcss/vite - Zustand for state management - Design system: tokens.css, fonts, icons - tauri.conf.json: solstice, 900x640, min 700x520 - global.css imports tokens and Tailwind
Diffstat (limited to 'vite.config.ts')
-rw-r--r--vite.config.ts33
1 files changed, 33 insertions, 0 deletions
diff --git a/vite.config.ts b/vite.config.ts
new file mode 100644
index 0000000..429a2de
--- /dev/null
+++ b/vite.config.ts
@@ -0,0 +1,33 @@
+import { defineConfig } from "vite";
+import react from "@vitejs/plugin-react";
+import tailwindcss from "@tailwindcss/vite";
+
+// @ts-expect-error process is a nodejs global
+const host = process.env.TAURI_DEV_HOST;
+
+// https://vite.dev/config/
+export default defineConfig(async () => ({
+ plugins: [react(), tailwindcss()],
+
+ // Vite options tailored for Tauri development and only applied in `tauri dev` or `tauri build`
+ //
+ // 1. prevent Vite from obscuring rust errors
+ clearScreen: false,
+ // 2. tauri expects a fixed port, fail if that port is not available
+ server: {
+ port: 1420,
+ strictPort: true,
+ host: host || false,
+ hmr: host
+ ? {
+ protocol: "ws",
+ host,
+ port: 1421,
+ }
+ : undefined,
+ watch: {
+ // 3. tell Vite to ignore watching `src-tauri`
+ ignored: ["**/src-tauri/**"],
+ },
+ },
+}));