/** @type {import('next').NextConfig} */ const nextConfig = { // Restrict page file extensions so stray .js files under src/pages are not treated as routes pageExtensions: ['tsx', 'ts', 'jsx', 'mdx'], images: { domains: [ 'nextcloud.biohazardvfx.com', 'f.io', 'utfs.io', // Placeholder providers 'placehold.co', 'placeholder.com', 'picsum.photos', ], formats: ['image/webp', 'image/avif'], deviceSizes: [640, 750, 828, 1080, 1200, 1920, 2048, 3840], imageSizes: [16, 32, 48, 64, 96, 128, 256, 384], minimumCacheTTL: 60, }, async rewrites() { return [ { source: '/admin/:path*', destination: '/admin/:path*', }, ] }, experimental: { optimizePackageImports: ['@/components', '@/lib'], }, serverExternalPackages: ['sharp', 'bcrypt'], typescript: { ignoreBuildErrors: true, }, eslint: { ignoreDuringBuilds: true, }, productionBrowserSourceMaps: false, compress: true, } export default nextConfig