cross-posted from: https://programming.dev/post/40815478

Introducing YT-Feeds.

I was looking for an ultra lightweight YouTube client that would allow me to avoid the algorithm, clickbait thumbnails, and AI generated comment sections. After months of work, and getting side tracked many times, YT-Feeds was born. It can be found on GitHub, but is available on the AUR, and can be installed with binstall, github releases, or via cargo directly.

It is built in Rust with no graphical framework. It functions entirely on key binds and the design philosophy is to have only one page to view at any time.

Features List:

  • Fast startup and navigation
  • Uses minimal resources (under 1 Mb RAM!)
  • Distraction and short form content free
  • Allows for searching/subscribing/unsubscribing channels
  • Automatically tracks and resumes watch history locally
  • Shows recent videos from subscriptions organized by date
  • Groups subscriptions into a collective “feed” organized by date
  • Categorize and view videos in the ‘watch later’ menu
  • Never requires leaving the terminal or using your mouse
  • Cross platform support for ARM and x86_64 Windows, MacOS, and Linux

Note: I expect there to be bugs in the future - feel free to submit an issue and I will get to it when I can find the time.

  • determinist@kbin.earth
    link
    fedilink
    arrow-up
    2
    ·
    4 days ago

    @[email protected] [System: Cachyos, latest updates]

    Installed yt-feeds Run as <user>: play doesn’t work for any videos

    Run as sudo: play works for videos but there is no sound. mpv not detected as a sound source, selecting different output devices makes no difference

    • nate@programming.devOP
      link
      fedilink
      arrow-up
      1
      ·
      edit-2
      4 days ago

      On version 1.0.3 running via the AUR package and directly from cargo, I cannot seem to replicate this issue.

      What is your MPV/yt-dlp configuration? It is possible that the configured options specify options not provided by YouTube, so playback will not work well. To attempt a fix, try moving these configuration files temporarily to a new location.

      Also please ensure this version is indeed the latest 1.0.3. It could be that the AUR did not cache the newest version, so this could be 1.0.2 which had issues with the new YT workaround.

      Edit:

      Please use Github Issues for any bug reporting to allow for better tracking. The newest version of yt-feeds is now at 1.0.5 with improved error logging for better user reporting!

  • A_norny_mousse@feddit.org
    link
    fedilink
    arrow-up
    2
    ·
    edit-2
    4 days ago

    YT-Feeds requires mpv and yt-dlp to be installed in order to function

    Nice.

    I don’t subscribe or use feeds on yt; can this be used to just search by keywords & watch?


    edit:

    Yes, this is possible by pressing Esc, then v.
    Searches & video selection works.
    However, no video is played. My mpv+yt-dlp setup works nicely otherwise.
    I have no idea where to look for logs and error messages.
    Additionally, there’s no documentation for configuration options, although the Readme states logging should be possible that way.

    • nate@programming.devOP
      link
      fedilink
      arrow-up
      1
      ·
      edit-2
      4 days ago

      In what environment is this setup?

      Running the version 1.0.3 via the AUR with Yt-dlp built on 11 12 2025 and MPV built on 9 24 2025 as well as the the provided MPV and yt-dlp configurations is confirmed to work this morning.

      Edit:

      Please use Github Issues for any bug reporting to allow for better tracking. The newest version of yt-feeds is now at 1.0.5 with improved error logging for better user reporting!

      • A_norny_mousse@feddit.org
        link
        fedilink
        arrow-up
        1
        ·
        4 days ago

        OK i guess I didn’t realize those configs are mandatory.

        Debian Stable

        $ yt-dlp --version
        2025.10.22
        $ mpv --version
        mpv v0.40.0 Copyright © 2000-2025 mpv/MPlayer/mplayer2 projects
        libplacebo version: v7.349.0
        FFmpeg version: 7.1.1-1+b1 (runtime 7.1.2-0+deb13u1)
        FFmpeg library versions:
           libavcodec      61.19.101
           libavdevice     61.3.100
           libavfilter     10.4.100
           libavformat     61.7.100
           libavutil       59.39.100
           libswresample   5.3.100
           libswscale      8.3.100
        

        Any way to turn on logging for the app itself?

        • nate@programming.devOP
          link
          fedilink
          arrow-up
          1
          ·
          edit-2
          3 days ago

          The attached configuration should not theoretically be necessary - I was able to see full functionality with blank configuration.

          In my testing though, I’ve notice some configurations options can cause issues with the yt-dlp and MPV pipeline.

          As per logging, it is automatically on with messages stored in the specified files in the documentation. As of 1.0.5, MPV and yt-dlp stderr is also logged. Anything prior to 1.0.5 will not feature this logging.

          Edit:

          Please use Github Issues for any bug reporting to allow for better tracking. The newest version of yt-feeds is now at 1.0.5 with improved error logging for better user reporting!