Skip to content

Userscript that renders YouTube channel RSS as a fast, full‑page feed — subscriptions, caching, source fallbacks, Shorts filter, playlists, and quick playback.

License

Notifications You must be signed in to change notification settings

testertv/FeedTube

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

24 Commits
 
 
 
 
 
 
 
 

Repository files navigation

FeedTube

📺 What is FeedTube?

FeedTube is a lightweight userscript that turns YouTube channel RSS into a fast, full‑page feed. It aggregates your subscriptions, caches offline, auto‑switches fetch sources, filters Shorts, and lets you save to local playlists — with one‑click channel adding and NewPipe‑compatible import/export.

YouTube has a very busy interface that takes a long time to load and freezes. To watch videos on FeedTube, embed links are used by default because they allow you to load and watch videos faster.

It is not very easy to recreate YouTube's full functionality in script, so some features may not work correctly or, as in the case of video search, may be missing altogether and redirect you to the original site.

✨ Highlights

  • No registration or login data needed
  • Full‑page grid from channel RSS with per‑channel cache
  • Resilient fetching (Direct → Mirror → Proxies) with source switch
  • Subscriptions manager + “Add to FeedTube” button on YouTube
  • Shorts toggle/sort
  • Local playlists + NewPipe Subscriptions import/export supported
  • Quick playback: new tab, popup, or floating panel

🖼️ Screenshots

⚙️ Installation

  1. Install the extension Tampermonkey
  2. Install the Script or Greasyfork Script
  3. Create empty FeedTube.html file or download it (Right mouse click -> Save Link As)
  4. Drag&Drop FeedTube.html in your browser

🔗 Fetch Sources

Below is a summary for each Source mode in your script and its limitations. All modes fetch the same YouTube RSS (feeds/videos.xml); they differ only in “how/through whom” the request is made.

All modes use the same YouTube RSS; only the transport differs.

Auto (direct → mirror → proxies)
  • How it works: Tries in order: Direct (2 attempts) → r.jina.ai → cors.isomorphic-git.org → allorigins.
  • Pros: Most resilient; something usually works.
  • Limitations: If Direct is unavailable, you may wait a long time (up to ~20s × 2 per channel due to GM_xhr timeout). Total load time can be stretched by the slowest channel.
Direct (GM_xhr → youtube.com)
  • How it works: GM_xmlhttpRequest directly to youtube.com (CORS is not an issue). Timeout 20s, anonymous: true (no cookies).
  • Pros: Fast, no middlemen; better privacy (requests go only to YouTube); less chance of stale responses.
  • Limitations:
    • On file:// you must enable your userscript manager’s “Allow access to file URLs” (otherwise it won’t run). Alternative: serve FeedTube.html via http://localhost.
    • Can be blocked by AdBlock/DNS/Firewall rules (youtube.com, i.ytimg.com).
    • With many subscriptions you may hit 429 or rate limits from YouTube.
    • In some setups (e.g., Greasemonkey/Firefox) you may need explicit @connect youtube.com (you already have @connect *).
Mirror (r.jina.ai)
  • How it works: Proxied request: https://r.jina.ai/http/.
  • Pros: Bypasses CORS easily; often works where Direct is blocked.
  • Limitations:
    • Public third‑party service: possible limits, 403/429/5xx, regional/network hiccups.
    • Can serve stale data (caches along the path); you append &_tm=… to bust cache, but it’s not guaranteed.
    • Privacy: channel feed URLs go to a third party.
Proxy 1 (isomorphic‑git)
Proxy 2 (AllOrigins, raw)
  • How it works: https://api.allorigins.win/raw?url=&_tm=...
  • Pros: Simple raw CORS proxy; convenient fallback.
  • Limitations:
    • Aggressive caching on the service side (you add _tm, but cache may still appear).
    • Stability/quotas/5xx typical of public proxies.
    • Privacy: again, third‑party service.

General constraints

  • file:// access required for Direct (or use localhost)
  • Ad‑blockers/CORS can block required domains
  • Proxy fetches may need explicit timeouts
  • Concurrency can hit rate limits
  • YouTube RSS typically returns ~15 items

Recommendations

  • Use Auto; switch to Direct if slow
  • Use Mirror if Direct is blocked
  • Allowlist domains and reduce concurrency for large lists

🛡️ Privacy Policy

The FeedTube project aims to ensure privacy, anonymity, and speed when using YouTube. Therefore, the application does not collect any data without your consent. Despite this, the script has the ability to download video information through third-party servers that may collect your data.

🐂 License

FeedTube is Free Software Script: You can use, study, share, and improve it at will. Specifically you can redistribute and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

💳 Please support my projects! 🤗 Thx.!!!

0x23A82beB500b8781c55E6F17b7e327d85F7f4108

About

Userscript that renders YouTube channel RSS as a fast, full‑page feed — subscriptions, caching, source fallbacks, Shorts filter, playlists, and quick playback.

Topics

Resources

License

Stars

Watchers

Forks