An open API service indexing awesome lists of open source software.

https://github.com/javiorfo/gativideo

Minimal TUI app to download YTS movies and opensubtitles subs
https://github.com/javiorfo/gativideo

linux opensubtitles rust rust-cli torrents yify yts

Last synced: about 1 month ago
JSON representation

Minimal TUI app to download YTS movies and opensubtitles subs

Awesome Lists containing this project

README

          

# gativideo
*Minimal TUI app to download YTS movies and opensubtitles subtitles*

## Caveats
- Rust version **1.88**
- It's upon `transmission-rpc` protocol. So It requires to be active in order to use gativideo.
- This program has been developed on and for Linux following open source philosophy.

gativideo

gativideo

## Installation
- Using Cargo
```bash
cargo install gativideo
```

- From AUR Arch Linux:
```bash
paru -S gativideo
```

## Details
- This program is a TUI wrapper of `YTS movies (a.k.a. yify)` and [opensubtitles](https://opensubtitles.org) to search and download movies and subtitles.
- It uses `transmission-rpc` protocol. Transmission daemon must be configured in order to use **gativideo**
- [Transmission configuration](https://github.com/transmission/transmission/blob/main/docs/Editing-Configuration-Files.md)
- [Transmission How To](https://help.ubuntu.com/community/TransmissionHowTo)
- This program serves itself from crates [yts-movies](https://github.com/javiorfo/yts-movies) and [opensubs](https://github.com/javiorfo/opensubs)
- Multiple movies at the time can be downloaded. You can close **gativideo** and the downloads still continue.

## Usage
#### Search movie
- Write the name of a movie and press Enter to search
- Use Tab to move focus between elements
#### Movies table
- Use up or k and down or j keys to navigate the table
- Use l to go to the next page
- Use h to go to the previous page
- Use t to open the torrent files popup table
- Use s to open the subtitles files popup table
- Use Tab to move focus between elements
#### Popup torrents table
- Use up or k and down or j keys to navigate the table
- Use Enter to start the torrent download
- Use q or Esc to close the popup
#### Popup subtitles table
- Use up or k and down or j keys to navigate the table
- Use Enter to start the subtitle download
- Use q or Esc to close the popup
#### Download movies table
- Use up or k and down or j keys to navigate the table
- Use s to toggle start/stop a download
- Use d to delete the download
- Use Tab to move focus between elements

## Config example
- Some properties could be define in a file stored as `$HOME/.config/gativideo/config.toml` [default values](https://github.com/javiorfo/gativideo/blob/master/example/config.toml)
```toml
[yts]
# Default YTS Host if not set
host = "https://en.yts-official.mx"
# Default download dir "$HOME/Downloads" if not set
download_dir = "/home/user/Downloads"
# Could be "rating" "oldest" "featured" "year" "likes" or "alphabetical" ("rating" is the default)
order = "rating"

[opensubs]
# Could be a list of languages ("spanish" is the default if not set)
# All the languages are the available in opensubtitles.org
languages = [ "spanish", "french" ]
# Ordered by "downloads", "uploaded" or "rating"
order = "downloads"

[transmission]
# Default Transmission RPC host (this is the default if not set)
host = "http://127.0.0.1:9091/transmission/rpc"
# If transmission rpc requires credentials
username = "your_username"
password = "your_password"
```

## Demos and screenshots

https://github.com/user-attachments/assets/a081ee6e-b77d-48d6-8b64-a923a441f5bb

#### Using filters
- **year** filter could be: *from 1920 to 2025*
- **rating** filter could be: *from 1 to 9*
- **order** filter could be: *latest, oldest, rating, alphabetical, featured, year or likes*

gativideo

---

### Donate
- **Bitcoin** [(QR)](https://raw.githubusercontent.com/javiorfo/img/master/crypto/bitcoin.png) `1GqdJ63RDPE4eJKujHi166FAyigvHu5R7v`
- [Paypal](https://www.paypal.com/donate/?hosted_button_id=FA7SGLSCT2H8G)