npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@jvnaid/ytj

v1.0.0

Published

A zero-config, quality-of-life wrapper around yt-dlp

Readme

ytj: The yt-dlp Wrapper

ytj is a zero-configuration, quality-of-life wrapper around yt-dlp designed to make downloading content from YouTube and other platforms as frictionless as possible. It takes the most common, complex yt-dlp flag combinations and simplifies them into intuitive commands, while automatically organizing your files and protecting your existing data.

Features

  • Smart Organization: Automatically downloads and organizes videos into directories named after the channel/uploader.
  • Data Protection: Built-in safeguards (--no-overwrites, --no-post-overwrites) guarantee that ytj will never overwrite, edit, modify, or delete any of your existing files.
  • Sensible Defaults: Grabs the absolute highest quality video and audio and merges them into an MP4 file. Playlists are disabled by default to prevent accidental mass-downloads.
  • Chapter Splitting: Easily download entire videos or audio tracks and automatically slice them into individual files per chapter.
  • SponsorBlock Integration: Automatically skip built-in sponsor segments with a single flag.

Installation

ytj is truly zero-configuration and cross-platform. It automatically manages its own dependencies!

  1. Clone or Download this repository.
  2. Open your terminal in the downloaded folder.
  3. On your first run, ytj will automatically detect your OS (Windows, Linux, or macOS) and seamlessly bootstrap the correct yt-dlp binary behind the scenes!

That's it. No pip install, no brew install, no manual paths.

(Optional: Add the folder to your system PATH so you can use ytj anywhere!)

Updating

Since YouTube frequently changes its systems, you will occasionally need to update the underlying yt-dlp binary. You can easily do this by running:

ytj -U

Usage

Core Commands

Download highest quality video (MP4)

# Windows
ytj "https://youtube.com/watch?v=..."

# Mac / Linux
./ytj "https://youtube.com/watch?v=..."

[!WARNING] If your URL contains an ampersand (&), such as &t=10s or &pp=..., you must wrap the entire URL in quotes. Otherwise, Windows Command Prompt and PowerShell will treat the & as a command separator and throw errors like 't' is not recognized as an internal or external command.

Download and split video by chapters (MP4)

ytj <link> --chapters

Download audio only and split by chapters (MP3)

ytj <link> --audio-chapters

Quality-of-Life Flags

You can mix and match these flags with any command:

| Flag | Description | | :--- | :--- | | -a or --audio | Download the highest quality audio (MP3 only) | | -v or --verbose | Disables quiet mode and shows standard yt-dlp output (no spam) | | --debug | Enables extreme yt-dlp debugging logs (network traces, config hashes) | | --no-sponsors | Integrates SponsorBlock to automatically skip ad/sponsor segments | | --subs | Automatically embeds English subtitles if available | | --thumb | Automatically embeds the high-resolution YouTube thumbnail | | -d or --dir | Interactively select or specify a target download directory ytj <url> -d [FolderName] | | --playlist | Force-allow downloading a playlist. Note: Passing a @channel, /user/, or list= URL will automatically trigger playlist mode! | | --sync | Syncs a channel. Records finished videos to a master ytj_archive.txt file, allowing you to flawlessly resume interrupted downloads or fetch new uploads later. |

Passthrough

ytj is a lightweight wrapper. Any argument it doesn't explicitly recognize will be passed directly to yt-dlp. This means you can still use all your favorite advanced yt-dlp flags!

Example:

ytj <link> --audio --cookies-from-browser chrome