Question about theme configuration outside package.json
Hi everyone,
I’m currently working on a Ghost theme and noticed that some theme configuration values are defined inside the config section of the package.json file.
Example from my theme:
"config": {
"card_assets": {
"exclude": [
"audio",
"blockquote",
"bookmark",
"button",
"callout",
"collection",
"gallery",
"header",
"header_v2",
"nft",
"product",
"signup",
"toggle",
"video"
],
"x-include": []
},
"image_sizes": {
"l": { "width": 1200 },
"m": { "width": 600 },
"s": { "width": 300 },
"xl": { "width": 2000 },
"xs": { "width": 100 },
"xxs": { "width": 30 }
},
"posts_per_page": 15
}
However, when running npm commands I get warnings like these:
npm warn Unknown cli config "image_sizes_m_width" (merisia-llc-theme:image_sizes_m_width). This will stop working in the next major version of npm.
npm warn Unknown cli config "image_sizes_xl_width" (merisia-llc-theme:image_sizes_xl_width). This will stop working in the next major version of npm.
npm warn Unknown cli config "image_sizes_s_width" (merisia-llc-theme:image_sizes_s_width). This will stop working in the next major version of npm.
npm warn Unknown cli config "image_sizes_xs_width" (merisia-llc-theme:image_sizes_xs_width). This will stop working in the next major version of npm.
npm warn Unknown cli config "image_sizes_xxs_width" (merisia-llc-theme:image_sizes_xxs_width). This will stop working in the next major version of npm.
npm warn Unknown cli config "card_assets_exclude_0" (merisia-llc-theme:card_assets_exclude_0). This will stop working in the next major version of npm.
npm warn Unknown cli config "posts_per_page" (merisia-llc-theme:posts_per_page). This will stop working in the next major version of npm.
My current npm version is:
npm 11.3.0
My question
Is it possible (or recommended) to define this kind of theme configuration outside of package.json?
For example in a dedicated configuration file such as:
- theme.config.json
- ghost.config.json
- or something similar
The goal would be to avoid npm interpreting the config section as CLI configuration and generating these warnings.
Or is the config section in package.json still the expected/official approach for Ghost themes, and these warnings can simply be ignored?
Thanks in advance for any clarification!