Files
torrent-stack/homepage/services.yaml
T
2026-07-02 15:28:58 -07:00

420 lines
18 KiB
YAML

---
# For configuration options and examples, please see:
# https://gethomepage.dev/configs/services/
- "Top":
- "Cloudflared Tunnel":
icon: sh-cloudflare-light
href: "https://dash.cloudflare.com/"
description:
widget:
type: cloudflared
accountid: 252f471fd316e89626f13c25c6012bc7 # from zero trust dashboard url e.g. https://one.dash.cloudflare.com/<accountid>/home/quick-start
tunnelid: 5aa02e6a-4166-4a2d-95c9-0af0f7237b23 # found in tunnels dashboard under the tunnel name
key: cfut_2i9bGXfbFuu0XkDEcCClXvVu0x1wYuwn7sTztLLGd5469df7
- "External Address":
icon: si-globus
href: https://api.ipify.org
widget:
type: customapi
url: https://api.ipify.org?format=json
method: GET
mappings:
- field: ip
label: Address
- "Tailscale >":
icon: sh-tailscale-light
href: https://login.tailscale.com
widget:
type: tailscale
deviceid: "{{HOMEPAGE_VAR_TAILSCALE_DEVICE_KEY}}"
key: "{{HOMEPAGE_VAR_TAILSCALE_KEY}}"
fields: [address]
- "Speedtest Results >":
icon: sh-speedtest-light
href: "{{HOMEPAGE_VAR_MYSPEED_HOST}}"
widget:
type: myspeed
url: "{{HOMEPAGE_VAR_MYSPEED_ADDRESS}}"
fields: [download, upload]
- "non-torrent-stack":
- "Odysseus":
icon: sh-ollama-light
href: "{{HOMEPAGE_VAR_WEB_PROTOCOL}}://{{HOMEPAGE_VAR_SERVER_NAME}}:7001"
siteMonitor: "{{HOMEPAGE_VAR_WEB_PROTOCOL}}://{{HOMEPAGE_VAR_SERVER_NAME}}:7001"
description: Local AI Models
- "llama.cpp (shaan-pc)":
icon: sh-llama-cpp-light
href: "http://192.168.50.6:5078"
siteMonitor: http://192.168.50.6:5078
description: 42GB VRAM + 32GB RAM
- "Pi-Hole Adblocker":
icon: sh-pi-hole-light
href: "http://192.168.50.2/admin"
description: Configure Device DNS to '192.168.50.2'
server: my-docker
container: pihole
# api token with `Account.Cloudflare Tunnel:Read` https://dash.cloudflare.com/profile/api-tokens
- "Media":
- "Plex >":
icon: sh-plex-light
#icon: sh-plex-dark
href: "{{HOMEPAGE_VAR_PLEX_HOST}}"
description: Watch
siteMonitor: "{{HOMEPAGE_VAR_PLEX_ADDRESS}}"
widget:
type: plex
url: "{{HOMEPAGE_VAR_PLEX_ADDRESS}}"
key: "{{HOMEPAGE_VAR_PLEX_KEY}}"
fields: [albums, movies, tv]
- "Tautulli >":
icon: sh-tautulli-light
href: "{{HOMEPAGE_VAR_TAUTULLI_HOST}}"
description: Monitor
server: my-docker
container: tautulli
widget:
type: tautulli
url: "{{HOMEPAGE_VAR_TAUTULLI_ADDRESS}}"
key: "{{HOMEPAGE_VAR_TAUTULLI_KEY}}"
enableUser: false
expandOneStreamToTwoRows: false
- "Media_2x2":
- "Sonarr >":
icon: sh-sonarr-light
href: "{{HOMEPAGE_VAR_SONARR_HOST}}"
description: TV Shows
server: my-docker
container: sonarr
widget:
type: sonarr
url: "{{HOMEPAGE_VAR_SONARR_ADDRESS}}"
key: "{{HOMEPAGE_VAR_SONARR_KEY}}"
enableQueue: false # shows a long list of queued items. looks ugly unless you reorder the page yourself
fields: [wanted, queued]
highlight:
queued:
numeric:
- level: warn
when: gt
value: 0
- "Radarr >":
icon: sh-radarr-light
href: "{{HOMEPAGE_VAR_RADARR_HOST}}"
description: Movies
server: my-docker
container: radarr
widget:
type: radarr
url: "{{HOMEPAGE_VAR_RADARR_ADDRESS}}"
key: "{{HOMEPAGE_VAR_RADARR_KEY}}"
fields: [wanted, queued]
highlight:
queued:
numeric:
- level: warn
when: gt
value: 0
- Upcoming TV Episodes:
icon: sh-sonarr-light
widget:
type: calendar
firstDayInWeek: sunday # optional - defaults to monday
view: agenda # optional - possible values monthly, agenda
maxEvents: 2 # optional - defaults to 10
showTime: true # optional - show time for event happening today - defaults to false
timezone: America/Los_Angeles
integrations: # optional
- type: sonarr
service_name: "Sonarr >"
baseUrl: "{{HOMEPAGE_VAR_SONARR_HOST}}"
unmonitored: true
- Upcoming Movies:
icon: sh-radarr-light
widget:
type: calendar
firstDayInWeek: sunday # optional - defaults to monday
view: agenda # optional - possible values monthly, agenda
maxEvents: 2 # optional - defaults to 10
showTime: true # optional - show time for event happening today - defaults to false
timezone: America/Los_Angeles
integrations: # optional
- type: radarr
service_name: "Radarr >"
baseUrl: "{{HOMEPAGE_VAR_RADARR_HOST}}"
unmonitored: true
- "Lidarr >":
icon: sh-lidarr-light
href: "{{HOMEPAGE_VAR_LIDARR_HOST}}"
description: Music
server: my-docker
container: lidarr
widget:
type: lidarr
url: "{{HOMEPAGE_VAR_LIDARR_ADDRESS}}"
key: "{{HOMEPAGE_VAR_LIDARR_KEY}}"
fields: [wanted, queued]
highlight:
queued:
numeric:
- level: warn
when: gt
value: 0
- "Seerr >":
icon: sh-overseerr-light
href: "{{HOMEPAGE_VAR_SEERR_HOST}}"
description: Request
server: my-docker
container: seerr
widget:
type: seerr
url: "{{HOMEPAGE_VAR_SEERR_ADDRESS}}"
key: "{{HOMEPAGE_VAR_SEERR_KEY}}"
fields: [completed, pending]
highlight:
pending:
numeric:
- level: warn
when: gt
value: 0
- "Media_Bottom":
- "Tdarr >":
icon: sh-tdarr
href: "{{HOMEPAGE_VAR_TDARR_HOST}}"
description: Stage
server: my-docker
container: tdarr
widget:
type: tdarr
url: "{{HOMEPAGE_VAR_TDARR_ADDRESS}}"
key: "{{HOMEPAGE_VAR_TDARR_KEY}}"
highlight:
queue:
numeric:
- level: warn
when: gt
value: 0
errored:
numeric:
- level: danger
when: gt
value: 0
- "Media_Tdarr_Nodes":
- "Intel UHD 710":
icon: sh-tdarr
server: my-docker
container: tdarr-node
- "Network":
- "Network_2x2":
- "Gluetun":
icon: sh-gluetun-light
description: VPN
server: my-docker
container: gluetun
#widget:
# type: gluetun
# url: ${HOMEPAGE_VAR_WEB_PROTOCOL}://${HOMEPAGE_VAR_LOCAL_IPV4}:8000
- "Port Updater":
icon: sh-docker-light
description: VPN
server: my-docker
container: port-updater
- "Network_list":
- "Prowlarr >":
icon: sh-prowlarr-light
href: "{{HOMEPAGE_VAR_PROWLARR_HOST}}"
description: Indexer Management
server: my-docker
container: prowlarr
widget:
type: prowlarr
url: "{{HOMEPAGE_VAR_PROWLARR_ADDRESS}}"
key: "{{HOMEPAGE_VAR_PROWLARR_KEY}}"
#fields: ["numberOfGrabs"]
highlight:
"numberOfGrabs":
numeric:
- level: warn
when: lte
value: 0
"numberOfQueries":
numeric:
- level: warn
when: lte
value: 0
"numberOfFailGrabs":
numeric:
- level: warn
when: gt
value: 0
"numberOfFailQueries":
numeric:
- level: warn
when: gt
value: 0
- "qBittorrent Active >":
icon: sh-qbittorrent-light
href: "{{HOMEPAGE_VAR_QBITTORRENT_HOST}}"
server: my-docker
container: qbittorrent
#description:
widget:
type: customapi
url: "{{HOMEPAGE_VAR_QBITTORRENT_ADDRESS}}/api/v2/torrents/info?filter=seeding"
mappings:
#- field:
- field: _count
label: "Active"
format: integer
scale: 1
highlight:
"Active":
numeric:
- level: danger
when: lte
value: 20
- "qBittorrent Status >":
icon: sh-qbittorrent-light
href: "{{HOMEPAGE_VAR_QBITTORRENT_HOST}}"
server: my-docker
container: qbittorrent
widget:
type: customapi
url: "{{HOMEPAGE_VAR_QBITTORRENT_ADDRESS}}/api/v2/sync/maindata"
mappings:
- field: server_state.connection_status
label: "status"
format: string
- field: server_state.dht_nodes
label: "DHT"
format: integer
scale: 1
- field: server_state.last_external_address_v4
label: "Address"
format: string
highlight:
"status":
string:
- level: danger
when: equals
value: connected
negate: true
"DHT":
#valueOnly: true
numeric:
- level: danger
when: lte
value: 0
- level: warn
when: lte
value: 200
- "qBittorrent Stats >":
icon: sh-qbittorrent-light
href: "{{HOMEPAGE_VAR_QBITTORRENT_HOST}}"
server: my-docker
container: qbittorrent
widget:
type: customapi
url: "{{HOMEPAGE_VAR_QBITTORRENT_ADDRESS}}/api/v2/sync/maindata"
mappings:
- field: server_state.alltime_dl
label: "T. Down"
format: bytes
scale: 0.862
- field: server_state.alltime_ul
label: "T. Up"
format: bytes
scale: 0.862
- field: server_state.global_ratio
label: "Ratio"
format: percent
scale: 100
#suffix: "%"
highlight:
"Ratio":
numeric:
- level: warn
when: lt
value: 100
- level: danger
when: lte
value: 60
- "qBittorrent Session >":
icon: sh-qbittorrent-light
href: "{{HOMEPAGE_VAR_QBITTORRENT_HOST}}"
server: my-docker
container: qbittorrent
widget:
type: customapi
url: "{{HOMEPAGE_VAR_QBITTORRENT_ADDRESS}}/api/v2/sync/maindata"
key: "{{HOMEPAGE_VAR_QBITTORRENT_KEY}}"
mappings:
- field: server_state.dl_info_speed
label: Down
format: bitrate
scale: 0.862
- field: server_state.dl_info_data
label: T. Down
format: bytes
scale: 0.862
- field: server_state.up_info_speed
label: Up
format: bitrate
scale: 0.862
- field: server_state.up_info_data
label: T. Up
format: bytes
scale: 0.862
highlight:
#"T. Down":
# numeric:
# - level: good
# when: gt
# value: 0
"Down":
numeric:
- level: good
when: gt
value: 0
#"T. Up":
# numeric:
# - level: good
# when: gt
# value: 0
"Up":
numeric:
- level: good
when: gt
value: 0
- "Minecraft":
icon: sh-minecraft-creeper-light
description: Game Server Instance
server: my-docker
container: mc
#siteMonitor: "udp://localhost:25575"
widget:
type: minecraft
url: http://localhost:25565
highlight:
status:
valueOnly: true
string:
- level: good
when: equals
value: "connected"
- level: warn
when: equals
value: "connected"
negate: true
players:
numeric:
- level: warn
when: lte
value: 0