package.json 2.8 KB

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