import { defineConfig } from "vite"; import react from "@vitejs/plugin-react"; import { resolve } from "path"; import { readFileSync, existsSync } from "node:fs"; let appVersion = "0.0.0"; const versionFile = resolve(__dirname, "../Docker/VERSION"); if (existsSync(versionFile)) { appVersion = readFileSync(versionFile, "utf-8") .trim() .replace(/^v/, ""); } // https://vitejs.dev/config/ export default defineConfig({ plugins: [react()], define: { /** BanGUI application version injected at build time from Docker/VERSION. */ __APP_VERSION__: JSON.stringify(appVersion), }, resolve: { alias: { "@": resolve(__dirname, "src"), }, }, server: { port: 5173, proxy: { "/api": { // In the dev compose stack the backend is reachable via its service // name on the shared Docker/Podman network. Using "localhost" would // resolve to the frontend container itself and cause ECONNREFUSED. target: "http://backend:8000", changeOrigin: true, }, }, }, });