You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Downstream projects must name their config files `config.{projectname}.js` (not just `{projectname}.js`). The loader only discovers files matching `config.${NODE_ENV}.js` — files without the `config.` prefix are silently ignored.
12
-
13
-
A template file `config/defaults/config.myproject.js` is now included in the stack. Copy and rename it for your project.
14
-
15
-
The loader now warns when `NODE_ENV` is set to a non-standard value and no matching config files are found.
16
-
17
-
### Steps for downstream projects
18
-
19
-
1. Rename any `{projectname}.js` config files to `config.{projectname}.js` (both in `config/defaults/` and `modules/*/config/`)
20
-
2. Run `npm start` and verify the config loads correctly
21
-
22
-
---
23
-
24
7
## Configuration split by module (2026-03-07)
25
8
26
9
The monolithic `config/defaults/development.js` has been split into per-module config files with a homogeneous naming convention.
@@ -32,6 +15,8 @@ The monolithic `config/defaults/development.js` has been split into per-module c
32
15
-**Updated**: `config/index.js` now globs module configs and merges them in layers
33
16
-**Standalone env files**: `config.production.js` and `config.test.js` no longer import `development.js` — they export only their overrides
34
17
-**Assets glob**: `config/assets.js` changed from `modules/*/config/*.js` to `modules/*/config/*.config.js` (excludes data config files, still matches init modules like `users.config.js`)
18
+
-**Template**: `config/defaults/config.myproject.js` added as a starting point for downstream projects
19
+
-**Startup warning**: the loader now warns when `NODE_ENV` is non-standard and no matching config files are found
35
20
36
21
### New file layout
37
22
@@ -68,6 +53,10 @@ Create `NODE_ENV=staging` by adding any of:
68
53
69
54
No file is required — only modules that define a `config.<env>.js` will be overridden.
70
55
56
+
### Downstream project config files
57
+
58
+
Files must be named `config.{projectname}.js` — files without the `config.` prefix are silently ignored. A template is provided at `config/defaults/config.myproject.js`.
59
+
71
60
### Steps for downstream projects
72
61
73
62
1. If you have **customized**`config/defaults/development.js`:
@@ -81,8 +70,9 @@ No file is required — only modules that define a `config.<env>.js` will be ove
81
70
- Remove the `import ... from './development.js'` and `merge()` wrapper — just export the override object directly
82
71
- If your test overrides contain module-specific keys (e.g. `uploads`), move them to `modules/<name>/config/config.test.js`
83
72
3. If you have **custom init modules** matching `modules/*/config/*.js` that are NOT named `*.config.js`, rename them to follow the `*.config.js` convention (the assets glob has changed).
84
-
4. If you have **not customized** any config files, the merge will apply cleanly.
85
-
5. Run `npm run lint && npm test` to confirm everything works.
73
+
4. Rename any `{projectname}.js` config files to `config.{projectname}.js` (both in `config/defaults/` and `modules/*/config/`)
74
+
5. If you have **not customized** any config files, the merge will apply cleanly.
75
+
6. Run `npm run lint && npm test` to confirm everything works.
0 commit comments