// @ts-check import { defineConfig } from 'astro/config'; import node from '@astrojs/node'; import react from '@astrojs/react'; // https://astro.build/config export default defineConfig({ output: 'server', adapter: node({ mode: 'standalone', }), integrations: [react()], vite: { resolve: { alias: { '@': '/src', '@components': '/src/components', '@layouts': '/src/layouts', '@data': '/src/data', '@pages': '/src/pages', '@styles': '/src/styles', '@stores': '/src/stores', '@utils': '/src/utils', '@types': '/src/types.ts', // Use the browser version of react-dom/server for client-side rendering 'react-dom/server.browser': 'react-dom/cjs/react-dom-server.browser.production.min.js', }, }, // Prevent server-only modules from being bundled for client side ssr: { noExternal: ['react-dom/server'], }, }, });