leadgenpro / vite.config.js
Raí Santos
oi
9674afe
import { defineConfig } from 'vite'
import react from '@vitejs/plugin-react'
// https://vite.dev/config/
export default defineConfig({
plugins: [react()],
build: {
// Basic minification (rolldown-vite compatible)
minify: true,
// Optimize chunk size
chunkSizeWarningLimit: 1000,
rollupOptions: {
output: {
manualChunks(id) {
// Split vendor libraries for better caching
if (id.includes('node_modules')) {
// Separate heavy libraries into their own chunks
if (id.includes('framer-motion')) {
return 'framer-motion';
}
if (id.includes('papaparse')) {
return 'papaparse';
}
if (id.includes('lucide-react')) {
return 'lucide-react';
}
// Everything else goes to vendor
return 'vendor';
}
},
// Optimize file naming for cache busting
entryFileNames: 'assets/[name]-[hash].js',
chunkFileNames: 'assets/[name]-[hash].js',
assetFileNames: 'assets/[name]-[hash].[ext]'
},
},
// Source maps disabled in production for smaller size
sourcemap: false,
},
// Optimize dependencies
optimizeDeps: {
include: ['react', 'react-dom', 'papaparse'],
},
})