mirror of https://github.com/FriendsOfTYPO3/tea.git synced 2024-11-14 04:56:13 +01:00
tea/package.json
Stefan Bürk dc04824b4c
[TASK] Streamline nodejs dependency management (#1302)
With #1289 the `nodejs` dependency management has
been changed from `yarn` to `npm` missing the one
or other important requirement.

This change streamlines the management by ...

* adding a `.nvmrc` file to the repository root to
  allow automatic nodejs/npm switch if the nvm shell
  switching is available on the host system.
* adding a `.npmrc` file to specify the lock file
  version and engine option.
* adding `nodejs` and `npm` version constraints as
  `engine` specification to the `package.json` file.
* remove `package-lock.json` from `.gitignore` and
  add it to the repository to ensure reproducable
  setups - which becomes more important if extension
  get custom backend/frontend modules and javascript.
* adding `package-lock.json` to exclude it from archive,
  due to remove from the `.gitignore` file.
* ensuring that new development files are excluded from
  packaging and publishing.
* use `npm ci` in GitHub action workflows to install
  from the lock-file.

Note: This change unblocks adding `npm` dispatching
to `Build/Scripts/runTests.sh`.

Resolves: #1301
Related: #1289
2024-05-14 12:13:43 +02:00

32 lines
853 B
JSON

{
"name": "tea",
"description": "npm helper tools used for the extension",
"repository": {
"url": "https://github.com/FriendsOfTYPO3/tea.git"
},
"keywords": [],
"type": "module",
"author": "",
"version": "1.0.0",
"license": "ISC",
"engines": {
"node": ">=18.19.0 <19.0.0",
"npm": ">=10.0.0"
},
"scripts": {
"lint:js": "eslint 'Resources/Public/**/*.js'",
"lint:js:fix": "eslint 'Resources/Public/**/*.js' --quiet --fix",
"lint:style": "stylelint Resources/Public/**/*.css",
"lint:style:fix": "stylelint Resources/Public/**/*.css --fix"
},
"devDependencies": {
"eslint": "^9.2.0",
"eslint-config-prettier": "^9.1.0",
"eslint-plugin-prettier": "^5.1.3",
"install": "^0.13.0",
"prettier": "^3.2.5",
"stylelint": "^16.5.0",
"stylelint-config-standard-scss": "^13.1.0",
"stylelint-no-browser-hacks": "^1.3.0"
}
}