← back to Linenwallpaper
linenwallpaper: declare helmet + dotenv (undeclared deps crashed prod on npm ci)
ac1a59222c6e065c1120e5f8b7c6423da6c38d60 · 2026-09-14 15:15:20 -0700 · Steve
server.js hard-requires helmet (line 7) and uses dotenv (line 5), but
package.json declared only express. The site survived on a stale
node_modules; the moment a deploy ran `npm ci --production` it pruned to
express-only and the app crash-looped (MODULE_NOT_FOUND 'helmet', 502).
Add both to dependencies so npm ci installs them. Local boot verified.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01X7mfnaSD5EB3DGZcaamU8A
Files touched
M package-lock.jsonM package.json
Diff
commit ac1a59222c6e065c1120e5f8b7c6423da6c38d60
Author: Steve <steve@designerwallcoverings.com>
Date: Mon Sep 14 15:15:20 2026 -0700
linenwallpaper: declare helmet + dotenv (undeclared deps crashed prod on npm ci)
server.js hard-requires helmet (line 7) and uses dotenv (line 5), but
package.json declared only express. The site survived on a stale
node_modules; the moment a deploy ran `npm ci --production` it pruned to
express-only and the app crash-looped (MODULE_NOT_FOUND 'helmet', 502).
Add both to dependencies so npm ci installs them. Local boot verified.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01X7mfnaSD5EB3DGZcaamU8A
---
package-lock.json | 15 +++++++++------
package.json | 6 ++++--
2 files changed, 13 insertions(+), 8 deletions(-)
diff --git a/package-lock.json b/package-lock.json
index bc5bf94..a571283 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1,16 +1,16 @@
{
"name": "linenwallpaper",
- "version": "0.1.1",
+ "version": "0.1.0",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "linenwallpaper",
- "version": "0.1.1",
+ "version": "0.1.0",
"dependencies": {
"dotenv": "^17.4.2",
"express": "^4.21.0",
- "helmet": "^8.1.0"
+ "helmet": "^8.3.0"
}
},
"node_modules/accepts": {
@@ -424,12 +424,15 @@
}
},
"node_modules/helmet": {
- "version": "8.1.0",
- "resolved": "https://registry.npmjs.org/helmet/-/helmet-8.1.0.tgz",
- "integrity": "sha512-jOiHyAZsmnr8LqoPGmCjYAaiuWwjAPLgY8ZX2XrmHawt99/u1y6RgrZMTeoPfpUbV96HOalYgz1qzkRbw54Pmg==",
+ "version": "8.3.0",
+ "resolved": "https://registry.npmjs.org/helmet/-/helmet-8.3.0.tgz",
+ "integrity": "sha512-Qgpiaws3Sm30Av8Eah6sjMCZZwjlBu+E68rhpCWBshY1lb09HtLwj5GviX0OyQIn+ulUS0iX0AxN5n3tLZzz1w==",
"license": "MIT",
"engines": {
"node": ">=18.0.0"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/EvanHahn"
}
},
"node_modules/http-errors": {
diff --git a/package.json b/package.json
index f481213..0759b81 100644
--- a/package.json
+++ b/package.json
@@ -7,6 +7,8 @@
"start": "node server.js"
},
"dependencies": {
- "express": "^4.21.0"
+ "dotenv": "^17.4.2",
+ "express": "^4.21.0",
+ "helmet": "^8.3.0"
}
-}
\ No newline at end of file
+}
← d268e5a linenwallpaper: fix IG embed showing the wrong account (@ret
·
back to Linenwallpaper
·
hero: remove hero-4grid.js collision, R4 alternating block i 941bcff →