--- id: yt-dlp-ejs version: "0.8.0" license: Unlicense AND MIT AND ISC license_treatment: permissive maintenance: active --- # yt-dlp-ejs — External JavaScript for yt-dlp supporting many runtimes License: permissive · Maintenance: active · Downloads: 2.5M/mo ## What it is and what it does yt-dlp-ejs extends yt-dlp with external JavaScript execution capabilities. It acts as a bridge allowing JavaScript code to run for video extraction from sites using JavaScript-based protection or obfuscation. The package supports multiple JavaScript runtimes—Deno, Bun, and Node.js—so users can choose whichever is available on their system. The package is distributed as a pure Python wheel with bundled JavaScript components (meriyah and astring). Installation is straightforward and requires no additional Python dependencies at runtime. It supports Python 3.10 through 3.14 and is actively maintained with recent updates. Use it for: - Extracting videos from sites using JavaScript-based player obfuscation or signature algorithms. - Running extraction on systems where flexibility in JavaScript runtime choice is needed. - Automating video downloads where JavaScript code execution is required for authentication or decryption. - Development and testing of extraction workflows that depend on JavaScript support. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. Provides external JavaScript execution support for yt-dlp, enabling JavaScript code to run across multiple runtime environments for video extraction. Yes. If you use yt-dlp and encounter sites requiring JavaScript execution for video extraction, this plugin is a straightforward addition with low install friction, active maintenance, permissive licensing, and no known vulnerabilities. ## Install pip install yt-dlp-ejs uv add yt-dlp-ejs poetry add yt-dlp-ejs ## Installing yt-dlp-ejs Before you install: Low friction installation as a pure Python wheel with no runtime dependencies. Active maintenance with recent commits and stable production status. License in practice: Licensed under Unlicense with bundled components under ISC and MIT licenses. All three are permissive and compatible with commercial and open-source use. Quickstart: pip install -U yt-dlp-ejs # The package integrates as an external JavaScript provider for yt-dlp # No additional import or configuration needed beyond standard yt-dlp usage At least one of Deno, Bun, or Node.js must be available on the system for JavaScript execution. Verify before relying: - Whether the package automatically detects and uses an available JS runtime or requires explicit configuration. - Performance characteristics when using different runtimes (Deno vs. Bun vs. Node). - Specific yt-dlp version compatibility range (minimum/maximum versions supported). - How the package integrates with yt-dlp after installation. ## Package facts - License: Unlicense AND MIT AND ISC (permissive) - Python support: supports_current - Install friction: low - Maintenance: active - Downloads: 2.5M/month (top 5,000 on PyPI) - Known vulnerabilities: none known ## Tags yt-dlp javascript support, yt-dlp external js runtime, javascript execution for video extraction, yt-dlp player code solver, multi-runtime js plugin, yt-dlp ejs, javascript video downloader, video-extraction, javascript-runtime, yt-dlp-plugin [View on SkillFed](https://skillfed.io/packages/yt-dlp-ejs) · [View on PyPI](https://pypi.org/project/yt-dlp-ejs/)