Something went wrong. Try again.
[READ-ONLY] Mirror of https://github.com/FoxxMD/multi-scrobbler. Scrobble plays from multiple sources to multiple clients docs.multi-scrobbler.app
Something went wrong. Try again.
multi-scrobbler package.json
8.0 kB · 241 lines
JSON
at playFetchFix
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242{ "name": "multi-scrobbler", "version": "0.12.1", "type": "module", "description": "scrobble plays from multiple sources to multiple clients", "scripts": { "schema": "npm run -s schema:docs && npm run -s schema:app", "schema:docs": "tsx src/backend/utils/SchemaDocsStaticUtils.ts", "schema:app": "tsx src/backend/utils/SchemaAppStaticUtils.ts", "circular": "madge --circular --extensions ts src/index.ts", "test": "npm run -s test:backend", "test:backend": "mocha --reporter spec", "dev": "nodemon -w src/backend -x tsx src/backend/index.ts", "start": "NODE_ENV=production tsx src/backend/index.ts", "build:frontend": "vite build", "build:backend": "tsc -p src/backend && npm run -s schema:app", "build": "npm run -s build:backend && npm run -s build:frontend && npm run -s docs:build", "build:parallel": "concurrently --kill-others-on-fail --names backend,frontend,docs \"npm run -s build:backend\" \"npm run -s build:frontend\" \"npm run docs:build\"", "docs:install": "cd docsite && npm ci --no-audit", "docs:start": "cd docsite && npm start", "docs:build": "npm run -s schema:docs && cd docsite && npm run build", "docs:netlify": "npm run -s docs:install && npm run -s docs:build", "postinstall": "patch-package", "install:parallel": "concurrently --kill-others-on-fail --names app,docs \"npm ci --no-audit\" \"npm run docs:install\"", "cliff": "git-cliff --unreleased", "storybook": "storybook dev -p 6006", "build-storybook": "storybook build" }, "exports": { ".": { "types": "./src/backend/common/infrastructure/typings/lastfm-node-client.d.ts", "import": "./src/backend/index.js" } }, "engines": { "node": ">=18.19.1", "npm": ">=9.1.0" }, "repository": { "type": "git", "url": "git+https://github.com/FoxxMD/multi-scrobbler.git" }, "author": "", "license": "MIT", "bugs": { "url": "https://github.com/FoxxMD/multi-scrobbler/issues" }, "private": true, "homepage": ".", "dependencies": { "@astronautlabs/mdns": "^1.0.7", "@atcute/identity-resolver-node": "^1.0.3", "@atproto/api": "^0.18.0", "@atproto/oauth-client-node": "^0.3.10", "@awaitjs/express": "^0.6.3", "@chakra-ui/react": "^3.34.0", "@curvenote/ansi-to-react": "^7.0.0", "@donedeal0/superdiff": "^1.1.1", "@emotion/react": "^11.14.0", "@ewanc26/tid": "^1.0.2", "@fortawesome/fontawesome-svg-core": "^6.4.2", "@fortawesome/free-solid-svg-icons": "^6.4.2", "@fortawesome/react-fontawesome": "^0.2.0", "@foxxmd/chromecast-client": "^1.0.4", "@foxxmd/get-version": "^0.0.3", "@foxxmd/logging": "^0.2.6", "@foxxmd/redact-string": "^0.1.2", "@foxxmd/regex-buddy-core": "^0.1.2", "@foxxmd/string-sameness": "^0.4.0", "@jellyfin/sdk": "^0.11.0", "@kenyip/backoff-strategies": "^1.0.4", "@keyv/valkey": "^1.0.8", "@lukehagar/plexjs": "^0.39.0", "@react-nano/use-event-source": "^0.13.0", "@reduxjs/toolkit": "^1.9.5", "@supercharge/promise-pool": "^3.0.0", "@svrooij/sonos": "^2.5.0", "@tailwindcss/vite": "^4.1.16", "@types/express-serve-static-core": "^4.19.6", "@xhayper/discord-rpc": "^1.3.0", "address": "^1.2.2", "ajv": "^8.12.0", "ajv-formats": "^3.0.1", "autoprefixer": "^10.4.17", "avahi-browse": "^1.1.4", "better-sse": "^0.8.0", "body-parser": "^1.19.0", "cacheable": "^1.10.4", "castv2": "^0.1.10", "clone": "^2.1.2", "clsx": "^2.0.0", "common-tags": "^1.8.2", "compare-versions": "^4.1.2", "concat-stream": "^2.0.0", "cors": "^2.8.5", "dayjs": "^1.10.4", "dbus-ts": "^0.0.7", "discord.js": "^14.25.1", "dotenv": "^10.0.0", "express": "^4.17.1", "express-session": "^1.17.2", "fast-deep-equal": "^3.1.3", "fixed-size-list": "^0.3.0", "flat-cache": "^6.1.13", "formidable": "^3.5", "glob": "^11.0.0", "google-auth-library": "^9.15.0", "gotify": "^1.1.0", "http-cookie-agent": "^7.0.1", "icecast-metadata-stats": "^0.1.12", "iso-websocket": "^0.3.0", "iti": "^0.7.0", "json-diff-ts": "^5.0.0-alpha.2", "json5": "^2.2.3", "jsondiffpatch": "^0.7.3", "jsondiffpatch-react": "^1.0.8", "keyv": "^5.5.0", "kodi-api": "^0.2.1", "lastfm-ts-api": "^2.6.0", "merge-error-cause": "^5.0.2", "mopidy": "^1.3.0", "mpd-api": "^1.1.2", "musicbrainz-api": "^0.27.0", "nanoid": "^3.3.1", "next-themes": "^0.4.6", "node-object-hash": "^3.1.1", "normalize-url": "^8.0.1", "ntfy": "^1.7.6", "p-event": "^4.2.0", "p-map": "^7.0.4", "p-retry": "^7.1.1", "passport": "^0.6.0", "passport-deezer": "^0.2.0", "patch-package": "^8.0.0", "prom-client": "^15.1.3", "react": "^18.2.0", "react-dom": "^18.2.0", "react-error-boundary": "^6.1.1", "react-icons": "^5.6.0", "react-redux": "^8.1.2", "react-router-dom": "^6.15.0", "react-virtuoso": "^4.18.3", "round-robin-js": "^3.0.10", "sass": "^1.93.3", "serialize-error": "^13.0.1", "shiki": "^4.0.2", "spotify-web-api-node": "^5.0.2", "superagent": "^8.0.9", "tailwindcss": "^4.1.16", "toad-scheduler": "^3.0.0", "tough-cookie": "^5.1.2", "ts-json-schema-generator": "^2.3.0", "tsx": "^4.7.0", "typeson": "^9.0.4", "typeson-registry": "^11.1.1", "undici": "7.10.0", "vite-express": "^0.16.0", "vlc-client": "^1.1.1", "xml2js": "0.6.1", "youtubei.js": "^15.0.1" }, "devDependencies": { "@chromatic-com/storybook": "^5.0.1", "@dbus-types/notifications": "^0.0.5", "@eslint/js": "^8.56.0", "@faker-js/faker": "^9.0.1", "@gr2m/net-interceptor": "^1.0.0", "@istanbuljs/nyc-config-typescript": "^1.0.2", "@storybook/addon-a11y": "10.1.11", "@storybook/addon-docs": "10.1.11", "@storybook/addon-onboarding": "10.1.11", "@storybook/addon-vitest": "10.1.11", "@storybook/react-vite": "10.1.11", "@testing-library/jest-dom": "^5.17.0", "@testing-library/react": "^13.4.0", "@testing-library/user-event": "^13.5.0", "@tsconfig/node18": "^1.0.1", "@types/chai": "^4.3.0", "@types/chai-as-promised": "^7.1.5", "@types/clone": "^2.1.2", "@types/common-tags": "^1.8.1", "@types/concat-stream": "^2.0.0", "@types/cors": "^2.8.17", "@types/express": "^4.17.13", "@types/express-session": "^1.17.4", "@types/formidable": "^3.4.5", "@types/jest": "^27.5.2", "@types/jscodeshift": "^0.11.6", "@types/mocha": "^9.1.0", "@types/node": "^20.19.2", "@types/object-hash": "^3.0.0", "@types/passport": "^1.0.12", "@types/react": "^18.2.18", "@types/react-dom": "^18.2.7", "@types/react-window": "^1.8.5", "@types/sinon": "^21.0.0", "@types/spotify-web-api-node": "^5.0.7", "@types/superagent": "^8.1.9", "@types/xml2js": "^0.4.11", "@vitejs/plugin-react": "^4.2.1", "@vitest/browser-playwright": "^4.1.0", "@vitest/coverage-v8": "^4.1.0", "chai": "^4.3.6", "chai-as-promised": "^7.1.1", "eslint": "^8.56.0", "eslint-plugin-prefer-arrow-functions": "^3.2.4", "eslint-plugin-storybook": "10.1.11", "git-cliff": "^2.12.0", "mocha": "^10.3.0", "mockdate": "^3.0.5", "msw": "^2.12.10", "neotraverse": "^0.6.18", "nodemon": "^3.0.3", "playwright": "^1.58.2", "sinon": "^21.0.2", "storybook": "^10.2.0", "ts-essentials": "^10.1.1", "typescript": "^5.9.3", "typescript-eslint": "^7.0.1", "vite": "^5.2.12", "vitest": "^4.1.0", "with-local-tmp-dir": "^6.0.0" }, "browserslist": { "production": [ ">0.2%", "not dead", "not op_mini all" ], "development": [ "last 1 chrome version", "last 1 firefox version", "last 1 safari version" ] }, "overrides": { "spotify-web-api-node": { "superagent": "$superagent" } }}