diff --git a/README.md b/README.md index c0811e0..388a40c 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,103 @@ -# managarr -A Servarr management TUI. +# managarr - A TUI to manage your Servarrs +Managarr is a TUI to help you manage your HTPC (Home Theater PC). + +## What Servarrs are supported? + +## ![radarr_logo](servarr_logos/radarr.png) [Radarr](https://wiki.servarr.com/radarr) +## ![sonarr_logo](servarr_logos/sonarr.png) [Sonarr](https://wiki.servarr.com/en/sonarr) +## ![readarr_logo](servarr_logos/readarr.png) [Readarr](https://wiki.servarr.com/en/readarr) +## ![lidarr_logo](servarr_logos/lidarr.png) [Lidarr](https://wiki.servarr.com/en/lidarr) +## ![prowlarr_logo](servarr_logos/prowlarr.png) [Prowlarr](https://wiki.servarr.com/en/prowlarr) +## ![whisparr_logo](servarr_logos/whisparr.png) [Whisparr](https://wiki.servarr.com/whisparr) +## ![bazarr_logo](servarr_logos/bazarr.png) [Bazarr](https://www.bazarr.media/) +## ![overseerr_logo](servarr_logos/overseerr.png) [Overseerr](https://docs.overseerr.dev/) +## ![tautulli_logo](servarr_logos/tautulli.png) [Tautulli](https://tautulli.com/) + +# Configuration +Managarr assumes reasonable defaults to connect to each service (i.e. Radarr is on localhost:7878), +but all servers will require you to input the API token. + +The configuration file is located somewhere different for each OS +### Linux +``` +$HOME/.config/managarr/config.yml +``` + +### Mac +``` +$HOME/Library/Application Support/managarr/config.yml +``` + +### Windows +``` +%APPDATA%/Roaming/managarr/config.yml +``` + +### Example Configuration: +```yaml +radarr: + host: 127.0.0.1 + port: 7878 + api_token: someApiToken1234567890 +sonarr: + host: 127.0.0.1 + port: 8989 + api_token: someApiToken1234567890 +readarr: + host: 127.0.0.1 + port: 8787 + api_token: someApiToken1234567890 +lidarr: + host: 127.0.0.1 + port: 8686 + api_token: someApiToken1234567890 +whisparr: + host: 127.0.0.1 + port: 6969 + api_token: someApiToken1234567890 +bazarr: + host: 127.0.0.1 + port: 6767 + api_token: someApiToken1234567890 +prowlarr: + host: 127.0.0.1 + port: 9696 + api_token: someApiToken1234567890 +overseerr: + host: 127.0.0.1 + port: 5055 + api_token: someApiToken1234567890 +tautulli: + host: 127.0.0.1 + port: 8181 + api_token: someApiToken1234567890 +``` + +## Features + +### Radarr + +- View your library, downloads, collections, or calendar +- Search your library for specific movies +- View details of a specific movie including description, history, downloaded file info, or the credits +- View details of any collection and the movies in them +- Add movies to Radarr + +## Dependencies +- [tui-rs](https://github.com/fdehau/tui-rs) +- [crossterm](https://github.com/crossterm-rs/crossterm) +- [clap](https://github.com/clap-rs/clap) +- [tokio](https://github.com/tokio-rs/tokio) +- [serde](https://github.com/serde-rs/serde) +- [reqwest](https://github.com/seanmonstar/reqwest) + +## Servarr Requirements +* [Radarr v3](https://radarr.video/docs/api/) +* [Sonarr v3](https://sonarr.tv/docs/api/) +* [Readarr v1](https://readarr.com/docs/api/) +* [Lidarr v1](https://lidarr.audio/docs/api/) +* [Whisparr v3](https://whisparr.com/docs/api/) +* [Prowlarr v1](https://prowlarr.com/docs/api/) +* [Bazarr v1.1.4](http://localhost:6767/api) +* [Overseerr v1](https://api-docs.overseerr.dev/) +* [Tautulli v2](https://github.com/Tautulli/Tautulli/wiki/Tautulli-API-Reference) \ No newline at end of file diff --git a/servarr_logos/bazarr.png b/servarr_logos/bazarr.png new file mode 100644 index 0000000..e305a01 Binary files /dev/null and b/servarr_logos/bazarr.png differ diff --git a/servarr_logos/lidarr.png b/servarr_logos/lidarr.png new file mode 100644 index 0000000..f70e4f3 Binary files /dev/null and b/servarr_logos/lidarr.png differ diff --git a/servarr_logos/overseerr.png b/servarr_logos/overseerr.png new file mode 100644 index 0000000..6fcd962 Binary files /dev/null and b/servarr_logos/overseerr.png differ diff --git a/servarr_logos/prowlarr.png b/servarr_logos/prowlarr.png new file mode 100644 index 0000000..5da44fe Binary files /dev/null and b/servarr_logos/prowlarr.png differ diff --git a/servarr_logos/radarr.png b/servarr_logos/radarr.png new file mode 100644 index 0000000..a413233 Binary files /dev/null and b/servarr_logos/radarr.png differ diff --git a/servarr_logos/readarr.png b/servarr_logos/readarr.png new file mode 100644 index 0000000..e18d03c Binary files /dev/null and b/servarr_logos/readarr.png differ diff --git a/servarr_logos/sonarr.png b/servarr_logos/sonarr.png new file mode 100644 index 0000000..9c1bb9e Binary files /dev/null and b/servarr_logos/sonarr.png differ diff --git a/servarr_logos/tautulli.png b/servarr_logos/tautulli.png new file mode 100644 index 0000000..ec31e24 Binary files /dev/null and b/servarr_logos/tautulli.png differ diff --git a/servarr_logos/whisparr.png b/servarr_logos/whisparr.png new file mode 100644 index 0000000..a7e6fd3 Binary files /dev/null and b/servarr_logos/whisparr.png differ diff --git a/src/app/radarr.rs b/src/app/radarr.rs index 0a9d689..c8edb65 100644 --- a/src/app/radarr.rs +++ b/src/app/radarr.rs @@ -131,16 +131,13 @@ pub enum ActiveRadarrBlock { CollectionDetails, Cast, Crew, - Events, FileInfo, - Logs, Movies, MovieDetails, MovieHistory, Downloads, SearchMovie, SortOptions, - Tasks, ViewMovieOverview, } diff --git a/src/models/mod.rs b/src/models/mod.rs index 2d01b87..5aded92 100644 --- a/src/models/mod.rs +++ b/src/models/mod.rs @@ -12,6 +12,13 @@ pub mod radarr_models; pub enum Route { Radarr(ActiveRadarrBlock), Sonarr, + Readarr, + Lidarr, + Whisparr, + Bazarr, + Prowlarr, + Overseerr, + Tautulli, } pub trait Scrollable { diff --git a/src/network/radarr_network.rs b/src/network/radarr_network.rs index e2862a5..90079fe 100644 --- a/src/network/radarr_network.rs +++ b/src/network/radarr_network.rs @@ -175,7 +175,7 @@ impl<'a> Network<'a> { let tmdb_rating = if let Some(rating) = ratings.tmdb { if let Some(value) = rating.value.as_f64() { - format!("{}%", value * 10f64) + format!("{}%", (value * 10f64).ceil()) } else { "".to_owned() }