import { defineConfig } from 'vite'; import react from '@vitejs/plugin-react'; import electron from 'vite-plugin-electron'; import renderer from 'vite-plugin-electron-renderer'; import { resolve } from 'path'; // https://vitejs.dev/config/ export default defineConfig({ plugins: [ react(), electron([ { // Main process entry file entry: 'electron/main/index.ts', onstart(options) { options.startup(); }, vite: { build: { outDir: 'dist-electron/main', rollupOptions: { external: ['electron', 'electron-store', 'electron-updater', 'ws'], }, }, }, }, { // Preload scripts entry file entry: 'electron/preload/index.ts', onstart(options) { options.reload(); }, vite: { build: { outDir: 'dist-electron/preload', rollupOptions: { external: ['electron'], }, }, }, }, ]), renderer(), ], resolve: { alias: { '@': resolve(__dirname, 'src'), '@electron': resolve(__dirname, 'electron'), }, }, server: { port: 5173, }, build: { outDir: 'dist', emptyOutDir: true, }, });