// When building under Node.js (not Bun), redirect bun:sqlite to a better-sqlite3 shim // so `next build` works locally without Bun installed. const isBun = typeof globalThis.Bun !== 'undefined'; /** @type {import('next').NextConfig} */ const nextConfig = { serverExternalPackages: isBun ? ['bun:sqlite'] : ['better-sqlite3'], ...(!isBun && { turbopack: { resolveAlias: { 'bun:sqlite': './tests/helpers/bun-sqlite-compat.ts', 'drizzle-orm/bun-sqlite/migrator': 'drizzle-orm/better-sqlite3/migrator', 'drizzle-orm/bun-sqlite': 'drizzle-orm/better-sqlite3', }, }, }), experimental: { serverActions: { bodySizeLimit: '2mb' } }, output: 'standalone', poweredByHeader: false, // Security headers (CSP, etc.) are set per-request in proxy.ts middleware // with a unique nonce, so they are NOT defined here as static headers. }; export default nextConfig;