Skip to content

Feather is a lightweight, efficient YouTube Music TUI built with Rust. It provides a minimalistic, ad-free music streaming experience directly from YouTube using yt-dlp and mpv, with a focus on low memory usage and fast playback.

License

Notifications You must be signed in to change notification settings

13unk0wn/Feather

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

30 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Feather ๐ŸŽต

Feather Logo

Feather is a lightweight, efficient, and locally hosted YouTube Music TUI built with Rust. It is designed to provide a minimalistic yet powerful music streaming experience directly from YouTube, using yt-dlp and mpv.

๐ŸŽฏ Aim

A lightweight, ad-less player with only essential features.

โœจ Features

  • ๐ŸŽถ Stream YouTube Music without downloading files.
  • โšก Minimal Memory Usage, targeting 60MB - 80MB RAM.
  • ๐Ÿš€ Fast Playback, with loading times around 3 seconds.
  • ๐Ÿ–ฅ๏ธ Terminal User Interface (TUI) built using Ratatui.
  • ๐Ÿ”„ Self-Update Feature (planned).

๐Ÿ› ๏ธ Installation

๐Ÿ“Œ Prerequisites

Ensure you have the following installed:

  • ๐Ÿฆ€ Rust (latest stable version)
  • ๐Ÿ“ฅ yt-dlp (for fetching YouTube data)
  • ๐ŸŽต mpv (for playback)

๐Ÿ”ง Build from Source

git clone https://github.com/13unk0wn/Feather.git
cd Feather/feather_frontend
cargo build --release

โ–ถ๏ธ Run Feather

./target/release/feather_frontend

๐ŸŽฎ Usage

Navigate through the TUI to search and play music. Additional controls and keyboard shortcuts will be documented soon.

๐Ÿ› ๏ธ Handling YouTube Restrictions

If a song fails to play due to YouTube restrictions, you can bypass them by adding your cookies to the environment:

export FEATHER_COOKIES="paste your cookies here"
  • This is optional and should only be used if playback errors occur.
  • Feather can play songs without cookies, but adding them may help mpv bypass certain restrictions.

๐ŸŒ„ Screenshot

Feather TUI Screenshot

๐Ÿ› ๏ธ Compatibility

Feather has been tested on Linux Mint (Debian Edition), but all libraries used are compatible with other Linux distributions. Windows and Macos are not officially supported.

๐Ÿ›ฃ๏ธ Roadmap

๐Ÿš€ Current Version: v0.1.0

  • ๐ŸŽถ Implement player
  • ๐Ÿ” Implement search
  • ๏ฟฝํ– Implement history

๐Ÿ”ฅ Upcoming: v0.2.0

  • โšก Improve performance
  • ๐ŸŽจ Improve UI
  • ๐ŸŒœ Add support for playing playlists
  • ๐ŸŽผ Add support for creating user playlists
  • โš™๏ธ Add user configuration support

๐Ÿค Contributing

Check out CONTRIBUTION.md

If you have any doubts regarding contribution, feel free to reach out via:

๐ŸŒŸ Special Thanks

A big thank you to the maintainers and contributors of:

  • RustyPipe โ€” for providing essential tools for YouTube playback.
  • mpv โ€” for making a great media player that powers Feather's playback.
  • Ratatui โ€” for enabling the terminal-based UI experience.
  • Sled - database

๐ŸŒŸ License

Feather is licensed under the MIT License.


๐Ÿ“ Notes

This project is still in early development. Expect rapid iterations and improvements. Suggestions and feedback are always appreciated!

About

Feather is a lightweight, efficient YouTube Music TUI built with Rust. It provides a minimalistic, ad-free music streaming experience directly from YouTube using yt-dlp and mpv, with a focus on low memory usage and fast playback.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages