initial migration
This commit is contained in:
117
next.config.js
Normal file
117
next.config.js
Normal file
@@ -0,0 +1,117 @@
|
||||
/** @type {import('next').NextConfig} */
|
||||
const nextConfig = {
|
||||
// Enable React Strict Mode for better error detection
|
||||
reactStrictMode: true,
|
||||
|
||||
// Configure images to allow external URLs if needed
|
||||
images: {
|
||||
remotePatterns: [
|
||||
{
|
||||
protocol: 'https',
|
||||
hostname: '**',
|
||||
},
|
||||
{
|
||||
protocol: 'http',
|
||||
hostname: '**',
|
||||
},
|
||||
],
|
||||
unoptimized: true, // Disable image optimization for static export
|
||||
},
|
||||
|
||||
// Enable SWC minification for faster builds
|
||||
swcMinify: true,
|
||||
|
||||
// Configure Sass support
|
||||
// sassOptions: {
|
||||
// additionalData: `@use "styles/variables" as *;`,
|
||||
// },
|
||||
|
||||
// Environment variables
|
||||
env: {
|
||||
RESEND_API_KEY: process.env.RESEND_API_KEY,
|
||||
WP_API_URL: process.env.WP_API_URL,
|
||||
WP_API_USER: process.env.WP_API_USER,
|
||||
WP_API_PASS: process.env.WP_API_PASS,
|
||||
SITE_URL: process.env.SITE_URL || 'http://localhost:3000',
|
||||
},
|
||||
|
||||
// Webpack configuration
|
||||
webpack: (config, { isServer }) => {
|
||||
// Handle node polyfills if needed
|
||||
if (!isServer) {
|
||||
config.resolve.fallback = {
|
||||
...config.resolve.fallback,
|
||||
fs: false,
|
||||
net: false,
|
||||
tls: false,
|
||||
};
|
||||
}
|
||||
|
||||
return config;
|
||||
},
|
||||
|
||||
// Generate source maps for better debugging
|
||||
productionBrowserSourceMaps: false,
|
||||
|
||||
// Disable X-Powered-By header for security
|
||||
poweredByHeader: false,
|
||||
|
||||
// Experimental features
|
||||
experimental: {
|
||||
// Enable server actions if needed
|
||||
serverActions: {
|
||||
bodySizeLimit: '1mb',
|
||||
},
|
||||
},
|
||||
|
||||
// Output configuration - use 'export' for static sites
|
||||
// or leave undefined for server-side rendering
|
||||
output: process.env.NEXT_PUBLIC_EXPORT === 'true' ? 'export' : undefined,
|
||||
|
||||
// Base path configuration (if deploying to subdirectory)
|
||||
basePath: process.env.NEXT_PUBLIC_BASE_PATH || '',
|
||||
|
||||
// trailingSlash: true, // Uncomment if you need trailing slashes
|
||||
|
||||
// async headers() {
|
||||
// return [
|
||||
// {
|
||||
// source: '/(.*)',
|
||||
// headers: [
|
||||
// {
|
||||
// key: 'X-Frame-Options',
|
||||
// value: 'DENY',
|
||||
// },
|
||||
// {
|
||||
// key: 'X-Content-Type-Options',
|
||||
// value: 'nosniff',
|
||||
// },
|
||||
// {
|
||||
// key: 'Referrer-Policy',
|
||||
// value: 'origin-when-cross-origin',
|
||||
// },
|
||||
// ],
|
||||
// },
|
||||
// ];
|
||||
// },
|
||||
|
||||
// async redirects() {
|
||||
// return [
|
||||
// {
|
||||
// source: '/old-path',
|
||||
// destination: '/new-path',
|
||||
// permanent: true,
|
||||
// },
|
||||
// ];
|
||||
// },
|
||||
|
||||
// async rewrites() {
|
||||
// return {
|
||||
// beforeFiles: [
|
||||
// // Rewrites for dynamic routes
|
||||
// ],
|
||||
// };
|
||||
// },
|
||||
};
|
||||
|
||||
module.exports = nextConfig;
|
||||
Reference in New Issue
Block a user