# franklioxygen/MyTube

Self-hosted downloader and player for YouTube, Bilibili, Twitch, MissAV, and yt-dlp sites. Features channel subscriptions, auto-downloads, and local storage for media. Organize your library into collections with a sleek UI. Includes built-in Cloudflare Tunnel support for secure remote access without port forwarding. Docker-ready deployment.

Repository: https://github.com/franklioxygen/MyTube
Canonical: https://ross.abutalabs.com/products/mytube
Homepage: https://franklioxygen.github.io/mytube/
Language: TypeScript
License: MIT
License Family: permissive
Topics: bilibili, bilibili-download, docker, nas, video-hosting, video-player, youtube, youtube-downloader, mui, typescript, expressjs, missav, sqlite, tanstack-query, downloader, yt-dlp, cloudflare-tunnel, twitch, live-translation
Last push: 2026-09-03T02:01:24+00:00

## Health v2 (maintenance only)
Score: 65/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 100, release rhythm 35, longevity 38
- inputs: {"age_days": 542, "days_push": 0, "days_rel": null, "gap_med": null, "n_releases_24m": 0}
- flags: no_releases
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1153, forks 108 (observed 2026-09-03T02:15:12.122318+00:00)

## What it is
MyTube is a self-hosted web application that downloads videos from YouTube, Bilibili, Twitch, MissAV, and any yt-dlp-supported site, storing them in a personal media library. It provides a sleek web UI for playback, channel subscriptions with auto-downloads, collections, private RSS feeds, and secure remote access via built-in Cloudflare Tunnel, deployable with Docker.

## Use cases
- self-host a personal youtube video library
- automatically download new uploads from subscribed youtube channels
- download bilibili videos and organize them into collections
- build a private media server on a nas with docker
- access my home media library remotely without port forwarding
- generate private rss feeds of my downloaded videos for plex
- batch download twitch vods and missav videos
- get telegram notifications when downloads finish

## When to choose
- you want full ownership of downloaded videos on your own disk with no algorithmic feed or account lock-in
- you need multi-site downloading (yt-dlp sites) plus a polished web player in one self-hosted app
- you want subscription automation that auto-fetches new uploads from channels
- you need secure remote access without exposing ports, via built-in Cloudflare Tunnel
- you want extras like TMDB metadata, auto subtitles, RSS feeds, and Telegram hooks

## When to avoid
- you only need a bare CLI downloader without a web UI or library management - plain yt-dlp is lighter
- you want a full-featured media server with transcoding and multi-user streaming like Jellyfin or Plex
- you cannot run Docker or a Node.js server on your hardware
- you need live streaming or real-time playback of content rather than downloading it first
- you require official support or enterprise-grade SLAs - this is a community MIT-licensed project

## Facets
- artifact type: application
- maturity: active
- function: http-server, web-framework, video-processing, web-scraping, search-engine, auth, file-system, database, workflow-automation, webhook, browser-extension, self-hosted
- domain: media, self-hosted, web-development, developer-tools, files
- platform: self-hosted, cross-platform, browser-extension, cli
- tags: yt-dlp, youtube-downloader, bilibili, twitch, missav, video-library, nas, media-server, rss-feed, cloudflare-tunnel, tmdb, telegram-notifications, sqlite, expressjs, mui, tanstack-query, typescript, channel-subscriptions, auto-download, collections, passkeys, chrome-extension, openlist, alist, plex, live-translation, subtitles, rss, notification, downloader, player, subscription, metadata, cloud-storage, tunneling, automation, video, docker, web-server, nodejs

## Member repositories
- franklioxygen/MyTube (main) score 65

## Provenance
- Observed fields: from GitHub, fetched 2026-09-03T02:15:12.122318+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T06:34:44.600606+00:00, confidence not recorded.
  - readme: https://github.com/franklioxygen/MyTube (fetched 2026-09-03T02:15:12.122318+00:00, sha 157f5942a9b9)
  - homepage: https://franklioxygen.github.io/mytube/ (fetched 2026-08-29T12:40:04.516337+00:00, sha 3d2826655c12)
- Data as of 2026-08-30T08:39:29.467469+00:00.
