Spaces:
Paused
Paused
| { | |
| "name": "backend", | |
| "version": "1.0.0", | |
| "description": "", | |
| "main": "src/app.ts", | |
| "scripts": { | |
| "build": "npx tsc", | |
| "dev": "npx tsc && node --import ./dist/backend/src/instrument.js scripts/termux-shim.js", | |
| "start": "node --import ./dist/backend/src/instrument.js scripts/termux-shim.js", | |
| "test": "./scripts/test-sequential.sh", | |
| "test:fast": "./scripts/test-sequential.sh 'tests/core/*.test.ts'", | |
| "test:phase1": "./scripts/test-sequential.sh 'tests/core/cipher_randomization.test.ts tests/core/client_rotation.test.ts tests/core/throttle_bypass_args.test.ts tests/core/streamer_args.test.ts tests/core/retry_stream_lifecycle.test.ts tests/core/smart_client_pick.test.ts tests/core/temp_file_flow.test.ts tests/core/cookie_bootstrap.test.ts tests/core/cookie_deduplication.test.ts tests/core/format_string_fallback.test.ts tests/api/convert_temp_file_e2e.test.ts'", | |
| "test:lite": "npx tsc && node --test tests/lite/*.lite.test.js", | |
| "test:ci": "./scripts/ci-test.sh", | |
| "test:ci:keep": "./scripts/ci-test.sh --keep", | |
| "test:single": "NODE_ENV=test NODE_OPTIONS='--import ./scripts/termux-shim.js --max-old-space-size=512' npx vitest run", | |
| "verify:chunked": "VITEST_INCLUDE_MANUAL=1 SMOKE_TEST=1 npx vitest run tests/manual/chunked_fetcher_smoke.test.ts --no-coverage", | |
| "test:live": "VITEST_INCLUDE_MANUAL=1 LIVE_TEST=1 npx vitest run tests/manual/facebook_live.test.ts tests/manual/instagram_live.test.ts tests/manual/tiktok_live.test.ts tests/manual/x_live.test.ts tests/manual/soundcloud_live.test.ts --no-coverage", | |
| "bench:convert": "node scripts/bench-convert.js", | |
| "lint": "bash ../scripts/lint-changed.sh", | |
| "lint:all": "eslint .", | |
| "format": "prettier --write ." | |
| }, | |
| "keywords": [], | |
| "author": "ejjays", | |
| "license": "AGPL-3.0-or-later", | |
| "type": "module", | |
| "dependencies": { | |
| "@google/genai": "^1.35.0", | |
| "@libsql/client": "^0.17.3", | |
| "@sentry/node": "^10.53.1", | |
| "@sentry/profiling-node": "^10.53.1", | |
| "better-sse": "^0.16.1", | |
| "bgutils-js": "3.2.0", | |
| "bullmq": "^5.73.0", | |
| "cheerio": "^1.2.0", | |
| "compression": "^1.8.1", | |
| "cors": "^2.8.5", | |
| "dotenv": "^17.2.3", | |
| "essentia.js": "^0.1.3", | |
| "express": "^5.2.1", | |
| "express-rate-limit": "^8.5.2", | |
| "fluent-ffmpeg": "^2.1.3", | |
| "form-data": "^4.0.5", | |
| "fpcalc": "^1.3.0", | |
| "got": "^11.8.6", | |
| "helmet": "^8.2.0", | |
| "ioredis": "^5.10.1", | |
| "jiti": "^2.6.1", | |
| "jsdom": "27.4.0", | |
| "lru-cache": "^11.3.6", | |
| "metascraper": "^5.50.3", | |
| "metascraper-author": "^5.50.1", | |
| "metascraper-description": "^5.50.1", | |
| "metascraper-image": "^5.50.1", | |
| "metascraper-instagram": "^5.50.3", | |
| "metascraper-logo": "^5.50.1", | |
| "metascraper-publisher": "^5.50.1", | |
| "metascraper-soundcloud": "^5.50.1", | |
| "metascraper-spotify": "^5.50.1", | |
| "metascraper-tiktok": "^5.50.1", | |
| "metascraper-title": "^5.50.1", | |
| "metascraper-url": "^5.50.1", | |
| "metascraper-youtube": "^5.50.1", | |
| "multer": "^1.4.5-lts.1", | |
| "node-shazam": "^1.2.7", | |
| "pino": "^10.3.1", | |
| "spotify-url-info": "^3.3.0", | |
| "sucrase": "^3.35.1", | |
| "ultimate-guitar": "^2.0.6", | |
| "undici": "^8.3.0", | |
| "wav-decoder": "^1.3.0", | |
| "youtubei.js": "^17.0.1" | |
| }, | |
| "devDependencies": { | |
| "@eslint/js": "^10.0.1", | |
| "@types/compression": "^1.8.1", | |
| "@types/cors": "^2.8.17", | |
| "@types/express": "^5.0.0", | |
| "@types/fluent-ffmpeg": "^2.1.27", | |
| "@types/metascraper": "^5.14.3", | |
| "@types/metascraper-author": "^5.14.5", | |
| "@types/metascraper-description": "^5.14.5", | |
| "@types/metascraper-image": "^5.14.5", | |
| "@types/metascraper-logo": "^5.14.4", | |
| "@types/metascraper-publisher": "^5.14.5", | |
| "@types/metascraper-title": "^5.14.5", | |
| "@types/metascraper-url": "^5.14.5", | |
| "@types/multer": "^1.4.11", | |
| "@types/node": "^22.19.19", | |
| "@types/supertest": "^7.2.0", | |
| "@vitest/coverage-v8": "^4.1.7", | |
| "eslint": "^10.4.0", | |
| "eslint-config-prettier": "^10.1.8", | |
| "eslint-plugin-sonarjs": "^4.0.3", | |
| "globals": "^17.6.0", | |
| "ioredis-mock": "^8.13.1", | |
| "msw": "^2.13.6", | |
| "pino-pretty": "^13.1.3", | |
| "prettier": "^3.8.3", | |
| "puppeteer-core": "^25.0.4", | |
| "supertest": "^7.2.2", | |
| "ts-node": "^10.9.2", | |
| "tsx": "^4.21.0", | |
| "typescript": "^5.4.0", | |
| "typescript-eslint": "^8.59.4", | |
| "vitest": "^4.1.5", | |
| "zod": "^4.4.3" | |
| }, | |
| "optionalDependencies": { | |
| "@esbuild/android-arm64": "^0.28.0", | |
| "@libsql/android-arm64": "npm:null@*", | |
| "@rollup/rollup-android-arm64": "^4.60.3", | |
| "@rollup/rollup-linux-x64-gnu": "^4.60.3" | |
| } | |
| } | |