29 lines
885 B
JavaScript
29 lines
885 B
JavaScript
/**
|
|
* Run `build` or `dev` with `SKIP_ENV_VALIDATION` to skip env validation. This is especially useful
|
|
* for Docker builds.
|
|
*/
|
|
import "./src/env.js";
|
|
|
|
const isDockerBuild = process.env.DOCKER_BUILD === "1";
|
|
const disableReactCompiler = process.env.DISABLE_REACT_COMPILER === "1";
|
|
|
|
/** @type {import("next").NextConfig} */
|
|
const config = {
|
|
// React Compiler is helpful in dev/prod but adds compile-time memory pressure in Docker builds.
|
|
reactCompiler: !disableReactCompiler,
|
|
productionBrowserSourceMaps: false,
|
|
serverExternalPackages: ["pg", "better-auth"],
|
|
experimental: {
|
|
webpackMemoryOptimizations: true,
|
|
},
|
|
// Skip duplicate typecheck/eslint during Docker `next build` to lower peak memory.
|
|
...(isDockerBuild
|
|
? {
|
|
typescript: { ignoreBuildErrors: true },
|
|
eslint: { ignoreDuringBuilds: true },
|
|
}
|
|
: {}),
|
|
};
|
|
|
|
export default config;
|