Files
fancy-dns/web/vite.config.ts
T
2026-09-27 11:34:26 +00:00

33 lines
1.0 KiB
TypeScript

import react from '@vitejs/plugin-react'
import tailwindcss from '@tailwindcss/vite'
import { defineConfig } from 'vite'
// The Go binary serves the built assets and the API from the same origin, so
// the app always talks to a relative `/api` base. During development Vite
// proxies that prefix to a locally running fancy-dns.
export default defineConfig({
base: './',
plugins: [react(), tailwindcss()],
server: {
proxy: {
'/api': {
target: 'http://127.0.0.1:8080',
changeOrigin: true,
// The logs SSE stream is long-lived: never time it out.
timeout: 0,
proxyTimeout: 0,
},
},
},
build: {
// The Go binary embeds the console via //go:embed all:dist in
// internal/web/web.go, so the build has to land there rather than in
// web/dist: a bundle nobody embeds is a console nobody can load.
outDir: '../internal/web/dist',
emptyOutDir: true,
sourcemap: false,
// Hashed asset names let the server cache them immutably.
assetsDir: 'assets',
},
})