package.json 4.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142
  1. {
  2. "name": "betterytm",
  3. "userscriptName": "BetterYTM",
  4. "version": "2.2.0",
  5. "description": "Lots of configurable layout and user experience improvements for YouTube Music™ and YouTube™",
  6. "homepage": "https://github.com/Sv443/BetterYTM",
  7. "main": "./src/index.ts",
  8. "type": "module",
  9. "scripts": {
  10. "dev": "concurrently \"nodemon --exec pnpm build-local-base --config-assetSource=local\" \"pnpm serve\"",
  11. "dev-cdn": "concurrently \"nodemon --exec pnpm build-local-base\" \"pnpm serve\"",
  12. "build-dev": "rollup -c --config-mode development --config-host github --config-branch develop",
  13. "build-prod": "pnpm build-prod-gh && pnpm build-prod-gf && pnpm build-prod-oujs",
  14. "build-prod-gh": "pnpm build-prod-base --config-host github",
  15. "build-prod-gf": "pnpm build-prod-base --config-host greasyfork --config-suffix _gf",
  16. "build-prod-oujs": "pnpm build-prod-base --config-host openuserjs --config-suffix _oujs",
  17. "post-build": "pnpm node-ts ./src/tools/post-build.ts",
  18. "build-local-base": "pnpm build-dev --config-gen-meta=false",
  19. "build-prod-base": "rollup -c --config-mode production --config-branch main",
  20. "preview": "pnpm build-prod-gh --config-assetSource=local && pnpm serve --auto-exit-time=6",
  21. "serve": "pnpm node-ts ./src/tools/serve.ts",
  22. "lint": "eslint . && tsc --noEmit",
  23. "tr-changed": "pnpm node-ts ./src/tools/tr-changed.ts",
  24. "tr-progress": "pnpm node-ts ./src/tools/tr-progress.ts",
  25. "tr-format": "pnpm node-ts ./src/tools/tr-format.ts",
  26. "tr-prep": "pnpm tr-format -p",
  27. "gen-readme": "pnpm node-ts ./src/tools/gen-readme.ts",
  28. "node-ts": "node --import tsx --no-warnings=ExperimentalWarning --enable-source-maps",
  29. "invisible": "node --enable-source-maps src/tools/run-invisible.mjs",
  30. "test": "pnpm node-ts ./test.ts",
  31. "knip": "knip",
  32. "storybook": "storybook dev -p 6006",
  33. "build-storybook": "storybook build"
  34. },
  35. "engines": {
  36. "node": ">=20",
  37. "pnpm": ">=9"
  38. },
  39. "repository": {
  40. "type": "git",
  41. "url": "git+https://github.com/Sv443/BetterYTM.git"
  42. },
  43. "author": {
  44. "name": "Sv443",
  45. "url": "https://github.com/Sv443"
  46. },
  47. "license": "AGPL-3.0-only",
  48. "bugs": {
  49. "url": "https://github.com/Sv443/BetterYTM/issues"
  50. },
  51. "funding": {
  52. "type": "github",
  53. "url": "https://github.com/sponsors/Sv443"
  54. },
  55. "hosts": {
  56. "github": "https://github.com/Sv443/BetterYTM",
  57. "greasyfork": "https://greasyfork.org/en/scripts/475682-betterytm",
  58. "openuserjs": "https://openuserjs.org/scripts/Sv443/BetterYTM"
  59. },
  60. "updates": {
  61. "github": "https://github.com/Sv443/BetterYTM/releases",
  62. "greasyfork": "https://greasyfork.org/en/scripts/475682-betterytm",
  63. "openuserjs": "https://openuserjs.org/scripts/Sv443/BetterYTM"
  64. },
  65. "dependencies": {
  66. "@sv443-network/userutils": "^9.4.1",
  67. "compare-versions": "^6.1.1",
  68. "dompurify": "^3.2.5",
  69. "marked": "^12.0.2",
  70. "tslib": "^2.8.1"
  71. },
  72. "devDependencies": {
  73. "@chromatic-com/storybook": "^1.9.0",
  74. "@eslint/eslintrc": "^3.3.1",
  75. "@eslint/js": "^9.25.1",
  76. "@rollup/plugin-json": "^6.1.0",
  77. "@rollup/plugin-node-resolve": "^15.3.1",
  78. "@rollup/plugin-terser": "^0.4.4",
  79. "@rollup/plugin-typescript": "^11.1.6",
  80. "@storybook/addon-essentials": "^8.6.12",
  81. "@storybook/addon-interactions": "^8.6.12",
  82. "@storybook/addon-links": "^8.6.12",
  83. "@storybook/blocks": "^8.6.12",
  84. "@storybook/html": "^8.6.12",
  85. "@storybook/html-vite": "^8.6.12",
  86. "@storybook/test": "^8.6.12",
  87. "@types/cors": "^2.8.17",
  88. "@types/express": "^4.17.21",
  89. "@types/greasemonkey": "^4.0.7",
  90. "@types/node": "^20.17.30",
  91. "@typescript-eslint/eslint-plugin": "^8.31.0",
  92. "@typescript-eslint/parser": "^8.31.0",
  93. "@typescript-eslint/utils": "^8.31.0",
  94. "concurrently": "^9.1.2",
  95. "cors": "^2.8.5",
  96. "dotenv": "^16.5.0",
  97. "eslint": "^9.25.1",
  98. "eslint-plugin-storybook": "^0.11.6",
  99. "express": "^4.21.2",
  100. "globals": "^15.15.0",
  101. "kleur": "^4.1.5",
  102. "knip": "^5.50.5",
  103. "nanoevents": "^9.1.0",
  104. "nodemon": "^3.1.10",
  105. "open-cli": "^8.0.0",
  106. "pnpm": "^10.9.0",
  107. "rollup": "^4.40.0",
  108. "rollup-plugin-execute": "^1.1.1",
  109. "rollup-plugin-import-css": "^3.5.8",
  110. "storybook": "^8.6.12",
  111. "storybook-dark-mode": "^4.0.2",
  112. "tsx": "^4.19.3",
  113. "typescript": "^5.8.3"
  114. },
  115. "browserslist": [
  116. "last 1 version",
  117. "> 1%",
  118. "not dead"
  119. ],
  120. "nodemonConfig": {
  121. "watch": [
  122. "src/**",
  123. "assets/**",
  124. "rollup.config.mjs",
  125. ".env",
  126. "changelog.md",
  127. "package.json"
  128. ],
  129. "ext": "ts,mts,js,jsx,mjs,json,html,css,svg,png",
  130. "ignore": [
  131. "dist/*",
  132. "dev/*",
  133. "*/stories/*",
  134. "assets/**/spritesheet.svg"
  135. ]
  136. },
  137. "pnpm": {
  138. "onlyBuiltDependencies": [
  139. "esbuild"
  140. ]
  141. }
  142. }