import { defineConfig } from 'astro/config'; import react from '@astrojs/react'; import node from '@astrojs/node'; import icon from 'astro-icon'; import tailwindcss from '@tailwindcss/vite'; export default defineConfig({ output: 'server', adapter: node({ mode: 'standalone' }), integrations: [ react(), icon({ include: { lucide: ['plus', 'book-open', 'zap', 'cpu', 'activity', 'circuit-board', 'file-text', 'chevron-down', 'chevron-right', 'arrow-right', 'check-circle-2'] } }), ], telemetry: false, devToolbar: { enabled: false }, vite: { plugins: [tailwindcss()], ssr: { external: ['@resvg/resvg-js'] }, build: { // CodeMirror + uPlot + React naturally exceeds 500kB minified chunkSizeWarningLimit: 700, rollupOptions: { external: ['@resvg/resvg-js'] }, }, optimizeDeps: { exclude: ['@resvg/resvg-js'] }, server: { host: '0.0.0.0', ...(process.env.VITE_HMR_HOST && { hmr: { host: process.env.VITE_HMR_HOST, protocol: 'wss', clientPort: 443 } }) } } });