Files
chaim ad2a6e6400 Fix: compute __dirname in vite.config.ts (undefined under ESM)
`__dirname` is undefined in ESM modules, so `path.resolve(__dirname, "./src")`
silently produced a bad path in Docker. Locally it happened to work (some
Node interop), but the Docker stage hit a clear error: "Could not load
/web/src/lib/utils ... ENOENT". Use fileURLToPath(import.meta.url).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-25 12:46:48 +00:00

34 lines
957 B
TypeScript

import path from "node:path";
import { fileURLToPath } from "node:url";
import { defineConfig } from "vite";
import react from "@vitejs/plugin-react";
// `__dirname` is undefined in ESM; compute it ourselves so the alias
// resolves correctly under both local Node and the Docker build.
const __dirname = path.dirname(fileURLToPath(import.meta.url));
// During dev (`npm run dev`), Vite serves on :5173 and proxies /api +
// /mcp + /health to the FastAPI server on :8765 (or BACKEND_PORT env).
const BACKEND_PORT = process.env.BACKEND_PORT || "8765";
export default defineConfig({
plugins: [react()],
resolve: {
alias: {
"@": path.resolve(__dirname, "./src"),
},
},
server: {
port: 5173,
proxy: {
"/api": `http://127.0.0.1:${BACKEND_PORT}`,
"/mcp": `http://127.0.0.1:${BACKEND_PORT}`,
"/health": `http://127.0.0.1:${BACKEND_PORT}`,
},
},
build: {
outDir: "dist",
sourcemap: false,
},
});