mirror of
https://github.com/LuanRT/YouTube.js.git
synced 2026-06-02 12:23:19 +00:00
It's just buggy and not very efficient, and I can't realistically improve it. Compression algorithms are complicated and would require quite a bit of effort to get right... fflate is tiny, works anywhere, and is more efficient. Also, here is an interesting article about compression from fflate's author : https://gist.github.com/101arrowz/253f31eb5abc3d9275ab943003ffecad
145 lines
5.3 KiB
JSON
145 lines
5.3 KiB
JSON
{
|
|
"name": "youtubei.js",
|
|
"version": "17.0.1",
|
|
"description": "A JavaScript client for YouTube's private API, known as InnerTube.",
|
|
"type": "module",
|
|
"types": "./dist/src/platform/lib.d.ts",
|
|
"typesVersions": {
|
|
"*": {
|
|
"agnostic": [
|
|
"./dist/src/platform/lib.d.ts"
|
|
],
|
|
"web": [
|
|
"./dist/src/platform/lib.d.ts"
|
|
],
|
|
"react-native": [
|
|
"./dist/src/platform/lib.d.ts"
|
|
],
|
|
"web.bundle": [
|
|
"./dist/src/platform/lib.d.ts"
|
|
],
|
|
"web.bundle.min": [
|
|
"./dist/src/platform/lib.d.ts"
|
|
],
|
|
"cf-worker": [
|
|
"./dist/src/platform/lib.d.ts"
|
|
]
|
|
}
|
|
},
|
|
"exports": {
|
|
".": {
|
|
"deno": "./dist/src/platform/deno.js",
|
|
"node": {
|
|
"import": "./dist/src/platform/node.js",
|
|
"default": "./dist/src/platform/node.js"
|
|
},
|
|
"types": "./dist/src/platform/lib.d.ts",
|
|
"browser": "./dist/src/platform/web.js",
|
|
"react-native": "./dist/src/platform/react-native.js",
|
|
"default": "./dist/src/platform/web.js"
|
|
},
|
|
"./package.json": "./package.json",
|
|
"./agnostic": {
|
|
"types": "./dist/src/platform/lib.d.ts",
|
|
"default": "./dist/src/platform/lib.js"
|
|
},
|
|
"./web": {
|
|
"types": "./dist/src/platform/lib.d.ts",
|
|
"default": "./dist/src/platform/web.js"
|
|
},
|
|
"./react-native": {
|
|
"types": "./dist/src/platform/lib.d.ts",
|
|
"default": "./dist/src/platform/react-native.js"
|
|
},
|
|
"./web.bundle": {
|
|
"types": "./dist/src/platform/lib.d.ts",
|
|
"default": "./bundle/browser.js"
|
|
},
|
|
"./cf-worker": {
|
|
"types": "./dist/src/platform/lib.d.ts",
|
|
"default": "./dist/src/platform/cf-worker.js"
|
|
}
|
|
},
|
|
"author": "LuanRT <luan.lrt4@gmail.com> (https://github.com/LuanRT)",
|
|
"funding": [
|
|
"https://github.com/sponsors/LuanRT"
|
|
],
|
|
"contributors": [
|
|
"Wykerd (https://github.com/wykerd/)",
|
|
"MasterOfBob777 (https://github.com/MasterOfBob777)",
|
|
"patrickkfkan (https://github.com/patrickkfkan)",
|
|
"akkadaska (https://github.com/akkadaska)",
|
|
"Absidue (https://github.com/absidue)"
|
|
],
|
|
"scripts": {
|
|
"test": "vitest run --reporter verbose",
|
|
"lint": "eslint ./src",
|
|
"lint:fix": "eslint --fix ./src",
|
|
"clean:source-maps": "rimraf ./bundle/browser.js.map ./bundle/cf-worker.js.map ./bundle/react-native.js.map",
|
|
"clean:build-output": "rimraf ./dist ./bundle/browser.js ./bundle/cf-worker.js ./bundle/react-native.js ./deno",
|
|
"build": "npm run clean:build-output && npm run clean:source-maps && npm run build:parser-map && npm run build:esm && npm run bundle:browser && npm run bundle:cf-worker && npm run bundle:react-native",
|
|
"build:esm": "tspc",
|
|
"build:deno": "cpy ./src ./deno && cpy ./protos ./deno && esbuild ./src/utils/DashManifest.tsx --keep-names --format=esm --platform=neutral --target=es2020 --outfile=./deno/src/utils/DashManifest.js && cpy ./package.json ./deno && replace \".js';\" \".ts';\" ./deno -r && replace '.js\";' '.ts\";' ./deno -r && replace \"'./DashManifest.ts';\" \"'./DashManifest.js';\" ./deno -r && replace \"'jintr';\" \"'jsr:@luanrt/jintr';\" ./deno -r && replace \"@bufbuild/protobuf/wire\" \"https://esm.sh/@bufbuild/protobuf@2.0.0/wire\" ./deno -r",
|
|
"build:proto": "rimraf ./protos/generated && node ./dev-scripts/generate-proto.mjs",
|
|
"build:parser-map": "node ./dev-scripts/gen-parser-map.mjs",
|
|
"bundle:browser": "esbuild ./dist/src/platform/web.js --banner:js=\"/* eslint-disable */\" --bundle --sourcemap --target=chrome70 --keep-names --format=esm --define:global=globalThis --conditions=module --outfile=./bundle/browser.js --platform=browser",
|
|
"bundle:react-native": "esbuild ./dist/src/platform/react-native.js --bundle --sourcemap --target=es2020 --keep-names --format=esm --platform=neutral --define:global=globalThis --conditions=module --outfile=./bundle/react-native.js",
|
|
"bundle:cf-worker": "esbuild ./dist/src/platform/cf-worker.js --banner:js=\"/* eslint-disable */\" --bundle --sourcemap --target=es2020 --keep-names --format=esm --define:global=globalThis --conditions=module --outfile=./bundle/cf-worker.js --platform=node",
|
|
"build:docs": "typedoc",
|
|
"prepare": "npm run build",
|
|
"watch": "tspc --watch"
|
|
},
|
|
"repository": {
|
|
"type": "git",
|
|
"url": "git+https://github.com/LuanRT/YouTube.js.git"
|
|
},
|
|
"files": [
|
|
"dist/",
|
|
"bundle/",
|
|
"package.json",
|
|
"README.md",
|
|
"LICENSE"
|
|
],
|
|
"license": "MIT",
|
|
"dependencies": {
|
|
"@bufbuild/protobuf": "^2.0.0",
|
|
"fflate": "^0.8.2",
|
|
"meriyah": "^6.1.4"
|
|
},
|
|
"devDependencies": {
|
|
"@eslint/js": "^9.37.0",
|
|
"@types/estree": "^1.0.6",
|
|
"@types/node": "^25.0.3",
|
|
"@typescript-eslint/eslint-plugin": "^8.46.0",
|
|
"@typescript-eslint/parser": "^8.46.0",
|
|
"cpy-cli": "^6.0.0",
|
|
"esbuild": "^0.25.6",
|
|
"eslint": "^9.37.0",
|
|
"globals": "^17.0.0",
|
|
"replace": "^1.2.2",
|
|
"rimraf": "^6.0.1",
|
|
"ts-patch": "^3.0.2",
|
|
"ts-proto": "^2.2.0",
|
|
"typedoc": "^0.28.14",
|
|
"typedoc-plugin-markdown": "^4.9.0",
|
|
"typescript": "^5.9.3",
|
|
"typescript-eslint": "^8.46.0",
|
|
"vitest": "^3.2.4"
|
|
},
|
|
"bugs": {
|
|
"url": "https://github.com/LuanRT/YouTube.js/issues"
|
|
},
|
|
"homepage": "https://github.com/LuanRT/YouTube.js#readme",
|
|
"keywords": [
|
|
"api",
|
|
"youtube",
|
|
"innertube",
|
|
"livechat",
|
|
"youtube-music",
|
|
"ytdl",
|
|
"youtube-studio",
|
|
"downloader",
|
|
"ytmusic"
|
|
]
|
|
}
|