package.json 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103
  1. {
  2. "name": "geniurl",
  3. "version": "2.0.0",
  4. "description": "Simple JSON and XML REST API to search for song metadata, the lyrics URL and lyrics translations on genius.com",
  5. "main": "src/index.ts",
  6. "type": "module",
  7. "scripts": {
  8. "dev": "nodemon -e \"ts,d.ts,json\" -x \"pnpm start\"",
  9. "start": "tsx src/index.ts",
  10. "dev-www": "cd www && pnpm run dev",
  11. "build-www": "cd www && pnpm run build",
  12. "dev-all": "concurrently \"pnpm dev\" \"pnpm dev-www\"",
  13. "lint": "eslint . && tsc --noEmit",
  14. "format": "eslint --fix .",
  15. "gen-token": "node --import tsx src/tools/gen-token.ts",
  16. "run-unit-tests": "jest --testLocationInResults --verbose",
  17. "run-latency-test": "node --import tsx src/tools/latency-test.ts",
  18. "test": "start-server-and-test start http://127.0.0.1:8074/v2/health run-unit-tests",
  19. "latency-test": "start-server-and-test start http://127.0.0.1:8074/v2/health run-latency-test"
  20. },
  21. "repository": {
  22. "type": "git",
  23. "url": "git+https://github.com/Sv443/geniURL.git"
  24. },
  25. "keywords": [
  26. "rest-api",
  27. "lyrics",
  28. "lyrics-search",
  29. "song-metadata"
  30. ],
  31. "author": {
  32. "name": "Sv443",
  33. "url": "https://github.com/Sv443",
  34. "email": "[email protected]"
  35. },
  36. "license": "MIT",
  37. "bugs": {
  38. "url": "https://github.com/Sv443/geniURL/issues"
  39. },
  40. "homepage": "https://github.com/Sv443/geniURL",
  41. "engines": {
  42. "node": ">=16",
  43. "pnpm": ">=9"
  44. },
  45. "dependencies": {
  46. "axios": "^1.7.9",
  47. "compression": "^1.7.5",
  48. "cors": "^2.8.5",
  49. "express": "^4.21.2",
  50. "helmet": "^7.2.0",
  51. "js2xmlparser": "^5.0.0",
  52. "kleur": "^4.1.5",
  53. "nanoid": "^3.3.8",
  54. "rate-limiter-flexible": "^2.4.2",
  55. "request-ip": "^3.3.0",
  56. "svcorelib": "^1.18.2",
  57. "tcp-port-used": "^1.0.2",
  58. "tsx": "^4.19.2",
  59. "typescript": "^5.7.3"
  60. },
  61. "devDependencies": {
  62. "@eslint/eslintrc": "^3.2.0",
  63. "@types/compression": "^1.7.5",
  64. "@types/cors": "^2.8.17",
  65. "@types/express": "^4.17.21",
  66. "@types/jest": "^29.5.14",
  67. "@types/node": "^20.17.16",
  68. "@types/request-ip": "^0.0.41",
  69. "@types/tcp-port-used": "^1.0.4",
  70. "@typescript-eslint/eslint-plugin": "^8.21.0",
  71. "@typescript-eslint/parser": "^8.21.0",
  72. "@typescript-eslint/utils": "^8.21.0",
  73. "@vuepress/plugin-seo": "2.0.0-rc.3",
  74. "@vuepress/plugin-sitemap": "2.0.0-rc.3",
  75. "concurrently": "^9.1.2",
  76. "dotenv": "^16.4.7",
  77. "eslint": "^9.18.0",
  78. "fast-xml-parser": "^4.5.1",
  79. "globals": "^15.14.0",
  80. "jest": "^29.7.0",
  81. "nodemon": "^3.1.9",
  82. "percentile": "^1.6.0",
  83. "pnpm": "^9.15.4",
  84. "start-server-and-test": "^2.0.10",
  85. "ts-jest": "^29.2.5",
  86. "ts-node": "^10.9.2",
  87. "tslib": "^2.8.1"
  88. },
  89. "nodemonConfig": {
  90. "watch": [
  91. "src/**",
  92. "www/**",
  93. ".env",
  94. "package.json"
  95. ],
  96. "ext": "ts,mts,js,jsx,mjs,json,html,css,svg,png",
  97. "ignore": [
  98. "*/dist/*",
  99. "*/dev/*",
  100. "*/out/*"
  101. ]
  102. }
  103. }