package.json 2.8 KB

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