From 897e7a126bd19ebf6cb9477c414270a18366d915 Mon Sep 17 00:00:00 2001 From: streaper2 Date: Mon, 2 Mar 2026 14:22:43 +0100 Subject: [PATCH] feat: Configure Next.js for standalone output, add Nixpacks deployment configuration, and disable build telemetry. --- next.config.ts | 1 + nixpacks.toml | 8 ++++++++ package-lock.json | 25 ++++++++++++++++++++++++- package.json | 5 +++-- 4 files changed, 36 insertions(+), 3 deletions(-) create mode 100644 nixpacks.toml diff --git a/next.config.ts b/next.config.ts index d3d28f0..c2fa4a2 100644 --- a/next.config.ts +++ b/next.config.ts @@ -7,6 +7,7 @@ const nextConfig: NextConfig = { ignoreBuildErrors: true, }, + output: "standalone", }; export default nextConfig; diff --git a/nixpacks.toml b/nixpacks.toml new file mode 100644 index 0000000..f2dd253 --- /dev/null +++ b/nixpacks.toml @@ -0,0 +1,8 @@ +[phases.build] +cmds = ["npm run build"] + +[phases.setup] +nixPkgs = ["nodejs_22", "npm-9_x", "openssl"] + +[start] +cmd = "node .next/standalone/server.js" diff --git a/package-lock.json b/package-lock.json index 45608da..3e4d0be 100644 --- a/package-lock.json +++ b/package-lock.json @@ -7,7 +7,6 @@ "": { "name": "plumeia", "version": "0.1.0", - "hasInstallScript": true, "dependencies": { "@google/genai": "^1.38.0", "@prisma/adapter-pg": "^7.4.1", @@ -15,6 +14,7 @@ "@types/bcryptjs": "^2.4.6", "@types/pg": "^8.16.0", "bcryptjs": "^3.0.3", + "cross-env": "^10.1.0", "dotenv": "^17.3.1", "lucide-react": "^0.563.0", "next": "16.1.6", @@ -414,6 +414,12 @@ "tslib": "^2.4.0" } }, + "node_modules/@epic-web/invariant": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@epic-web/invariant/-/invariant-1.0.0.tgz", + "integrity": "sha512-lrTPqgvfFQtR/eY/qkIzp98OGdNJu0m5ji3q/nJI8v3SXkRKEnWiOxMmbvcSoAIzv/cGiuvRy57k4suKQSAdwA==", + "license": "MIT" + }, "node_modules/@esbuild/aix-ppc64": { "version": "0.27.3", "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.27.3.tgz", @@ -3698,6 +3704,23 @@ "dev": true, "license": "MIT" }, + "node_modules/cross-env": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/cross-env/-/cross-env-10.1.0.tgz", + "integrity": "sha512-GsYosgnACZTADcmEyJctkJIoqAhHjttw7RsFrVoJNXbsWWqaq6Ym+7kZjq6mS45O0jij6vtiReppKQEtqWy6Dw==", + "license": "MIT", + "dependencies": { + "@epic-web/invariant": "^1.0.0", + "cross-spawn": "^7.0.6" + }, + "bin": { + "cross-env": "dist/bin/cross-env.js", + "cross-env-shell": "dist/bin/cross-env-shell.js" + }, + "engines": { + "node": ">=20" + } + }, "node_modules/cross-spawn": { "version": "7.0.6", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", diff --git a/package.json b/package.json index 73b7193..d4defdf 100644 --- a/package.json +++ b/package.json @@ -7,8 +7,8 @@ }, "scripts": { "dev": "next dev", - "build": "npx prisma generate && next build", - "start": "npx prisma generate && npx prisma db push && next start", + "build": "npx prisma generate && cross-env NEXT_TELEMETRY_DISABLED=1 next build", + "start": "npx prisma generate && npx prisma db push && node .next/standalone/server.js", "lint": "next lint" }, "dependencies": { @@ -18,6 +18,7 @@ "@types/bcryptjs": "^2.4.6", "@types/pg": "^8.16.0", "bcryptjs": "^3.0.3", + "cross-env": "^10.1.0", "dotenv": "^17.3.1", "lucide-react": "^0.563.0", "next": "16.1.6",