/yast

Yet Another Streaming Tool

Primary LanguageGoBSD 3-Clause "New" or "Revised" LicenseBSD-3-Clause

Yet Another Streaming Tool ⭐️

forthebadge forthebadge

PRs Welcome

YAST is a TUI utility that will let you stream your favorite movies/tv-series in one command. This utility is built in Go using Cobra for Seamless CLI experience, Bubbletea for beautiful TUI, Go-Colly for Web-Scraping and WebTorrent CLI for Streaming.

⚡️ Quick start

  1. Download and install Go. Version 1.18 or higher is required.

  2. Download and install WebTorrent-CLI.

npm install webtorrent-cli -g

Note: use sudo if required

  1. Download and install VLC Media Player. (Support for more players will be added in the next release)

  2. Clone the repo and go inside the repo folder.

git clone https://github.com/qascade/yast && cd yast
  1. 🏗 Build the binary.
go build
  1. 🏃🏻‍♀️ Run the binary.
./yast --help
YAST is a TUI utility that will let you stream your favorite movies/tv-series in one command.

Usage:
  yast [command]

Available Commands:
  completion  Generate the autocompletion script for the specified shell
  config      Used to change already set user preferences or reset the user preferences to default
  help        Help about any command
  search      Search for a movie or tv-series that you want to watch
  setup       setup yast for first-time users

Flags:
  -h, --help   help for yast

Use "yast [command] --help" for more information about a command.
  1. 🏃🏻‍♀️ Run the following to choose your desired default player.
./yast setup 

Screenshot 2022-08-25 at 4 57 18 PM

  1. 🔍 Search for a movie. Make sure to use a VPN before doing this step. Recommendations in NOTE Section.
./yast search -m spiderman

If the movie name contains multiple words wrap it inside double quotes e.g. ./yast search -m "spiderman no way home"

  1. 😬 Select the desired movie from the list.

Screenshot 2022-08-25 at 5 40 13 AM

  1. The movie starts with the default Player. Wohoo!! 🥂

📝 NOTE

  1. The current supported target requires VPN to get results. Please make sure that you are connected to a VPN Server before searching or you may not get the results. We personally recommend using CloudFlare Warp. You can download it here.
  2. The Project is still in development stage. So, you might see undesired behaviour while using yast. Please file an issue if you experience any bugs or undesired behaviour.
  3. yast does not support WSL2, because the current targets available in yast, only work with VPN and it's very difficult to establish a VPN connection on WSL2.

🤝 Contribution

  1. You can look at the design docs on how we are planning to build this project.
  2. Contributions and suggestions are always welcome.
  3. Look at CONTRIBUTION.md for more details.
  4. Read and Follow the CODE_OF_CONDUCT.

System Design

Design Docs

Structure Design

Command Design

UI Design

Design Diagrams

Screenshot 2022-08-13 at 1 22 09 PM

Screenshot 2022-08-25 at 5 21 11 AM