commit bd17657e670cc4388384624d2cc94e6f25639646 Author: Oliver Vogt Date: Sat Jul 11 05:52:49 2026 +0200 Initial Homepage dashboard configuration Services, widgets, layout and settings for the homelab dashboard. Secrets are externalized via {{HOMEPAGE_VAR_*}} placeholders and supplied through a local .env file (not committed). diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..2709865 --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +.env +logs/ +.claude/ diff --git a/bookmarks.yaml b/bookmarks.yaml new file mode 100644 index 0000000..21a379d --- /dev/null +++ b/bookmarks.yaml @@ -0,0 +1,16 @@ +--- +# For configuration options and examples, please see: +# https://gethomepage.dev/configs/bookmarks + +- Developer: + - Github: + - abbr: GH + href: https://github.com/ + - Proxmox Docs: + - abbr: PVE + href: https://pve.proxmox.com/pve-docs/ + +- Entertainment: + - YouTube: + - abbr: YT + href: https://youtube.com/ diff --git a/custom.css b/custom.css new file mode 100644 index 0000000..e69de29 diff --git a/custom.js b/custom.js new file mode 100644 index 0000000..e69de29 diff --git a/docker.yaml b/docker.yaml new file mode 100644 index 0000000..2f4c4e3 --- /dev/null +++ b/docker.yaml @@ -0,0 +1,10 @@ +--- +# For configuration options and examples, please see: +# https://gethomepage.dev/configs/docker/ + +# my-docker: +# host: 127.0.0.1 +# port: 2375 + +# my-docker: +# socket: /var/run/docker.sock diff --git a/kubernetes.yaml b/kubernetes.yaml new file mode 100644 index 0000000..aca6e82 --- /dev/null +++ b/kubernetes.yaml @@ -0,0 +1,2 @@ +--- +# sample kubernetes config diff --git a/proxmox.yaml b/proxmox.yaml new file mode 100644 index 0000000..23dc60a --- /dev/null +++ b/proxmox.yaml @@ -0,0 +1,5 @@ +--- +pve: + url: https://192.168.30.215:8006 + token: "{{HOMEPAGE_VAR_PROXMOX_USERNAME}}" + secret: "{{HOMEPAGE_VAR_PROXMOX_PASSWORD}}" diff --git a/services.yaml b/services.yaml new file mode 100644 index 0000000..ff51868 --- /dev/null +++ b/services.yaml @@ -0,0 +1,421 @@ +--- +# For configuration options and examples, please see: +# https://gethomepage.dev/configs/services/ + +- Infrastruktur: + - Proxmox VE: + icon: proxmox.svg + href: https://192.168.30.215:8006 + description: Proxmox Virtual Environment + widget: + type: proxmox + url: https://192.168.30.215:8006 + username: "{{HOMEPAGE_VAR_PROXMOX_USERNAME}}" + password: "{{HOMEPAGE_VAR_PROXMOX_PASSWORD}}" + fields: ["vms", "lxc", "resources.cpu", "resources.mem"] + + - Proxmox Storage local: + icon: proxmox.svg + href: https://192.168.30.215:8006 + description: Proxmox Storage (local) + widget: + type: customapi + url: https://192.168.30.215:8006/api2/json/nodes/ms02-ultra/storage/local/status + headers: + Authorization: "{{HOMEPAGE_VAR_PROXMOX_PVE_AUTH}}" + mappings: + - field: data.avail + label: Frei + format: bytes + - field: data.used + label: Belegt + format: bytes + - field: data.total + label: Gesamt + format: bytes + - field: data.used_fraction + label: Auslastung + format: percent + scale: 100 + + - Proxmox Storage local-zfs: + icon: proxmox.svg + href: https://192.168.30.215:8006 + description: Proxmox Storage (local-zfs) + widget: + type: customapi + url: https://192.168.30.215:8006/api2/json/nodes/ms02-ultra/storage/local-zfs/status + headers: + Authorization: "{{HOMEPAGE_VAR_PROXMOX_PVE_AUTH}}" + mappings: + - field: data.avail + label: Frei + format: bytes + - field: data.used + label: Belegt + format: bytes + - field: data.total + label: Gesamt + format: bytes + - field: data.used_fraction + label: Auslastung + format: percent + scale: 100 + + - Proxmox Storage local-zfs-2tb: + icon: proxmox.svg + href: https://192.168.30.215:8006 + description: Proxmox Storage (local-zfs-2tb) + widget: + type: customapi + url: https://192.168.30.215:8006/api2/json/nodes/ms02-ultra/storage/local-zfs-2tb/status + headers: + Authorization: "{{HOMEPAGE_VAR_PROXMOX_PVE_AUTH}}" + mappings: + - field: data.avail + label: Frei + format: bytes + - field: data.used + label: Belegt + format: bytes + - field: data.total + label: Gesamt + format: bytes + - field: data.used_fraction + label: Auslastung + format: percent + scale: 100 + + - Unifi: + icon: unifi.svg + href: https://192.168.30.254/network/default/dashboard + description: Unifi Network Controller + widget: + type: unifi + url: https://192.168.30.254 + key: "{{HOMEPAGE_VAR_UNIFI_KEY}}" + + - Adguard: + icon: adguard-home.svg + href: http://192.168.30.244 + description: AdGuard Home + widget: + type: adguard + url: http://192.168.30.244 + username: "{{HOMEPAGE_VAR_ADGUARD_USERNAME}}" + password: "{{HOMEPAGE_VAR_ADGUARD_PASSWORD}}" + + - Synology: + icon: synology.svg + href: https://ds1520.vogt.de.com/ + description: Synology DS1520 + widget: + type: diskstation + url: https://ds1520.vogt.de.com + username: "{{HOMEPAGE_VAR_SYNOLOGY_USERNAME}}" + password: "{{HOMEPAGE_VAR_SYNOLOGY_PASSWORD}}" + volume: volume_1 + + - NetBird: + icon: netbird.svg + href: https://netbird.vogt.de.com/ + description: NetBird VPN + + - Proxmox Backup Server: + icon: proxmox.svg + href: https://192.168.30.216:8007 + description: Proxmox Backup Server + +- Smarthome: + - Home Assistant: + icon: home-assistant.svg + href: https://haos.vogt.de.com/ + description: Home Assistant + + - Homematic: + icon: homematic-ip.png + href: http://192.168.30.206/ + description: Homematic + + - Zigbee Coordinator: + icon: https://shop.codm.de/media/b5/87/c3/1694098129/codm-dark.svg?ts=1694098129 + href: http://192.168.30.80 + description: Zigbee Coordinator + + - NodeRed: + icon: node-red.svg + href: http://192.168.30.207:1880/ + description: NodeRed + +- Monitoring: + - Beszel: + icon: beszel.svg + href: https://beszel.vogt.de.com + description: Beszel Monitoring + widget: + type: beszel + url: https://beszel.vogt.de.com + username: "{{HOMEPAGE_VAR_BESZEL_USERNAME}}" + password: "{{HOMEPAGE_VAR_BESZEL_PASSWORD}}" + version: 2 + + - Uptime Kuma: + icon: uptime-kuma.svg + href: https://uptimekuma.vogt.de.com/dashboard + description: Uptime Kuma + widget: + type: uptimekuma + url: https://uptimekuma.vogt.de.com + slug: home-lab + + - Patchmon: + icon: http://192.168.30.161:3000/assets/logo_square_default.svg + href: http://192.168.30.161:3000 + description: PatchMon Statistics + widget: + type: customapi + url: http://192.168.30.161:3000/api/v1/gethomepage/stats + headers: + Authorization: "{{HOMEPAGE_VAR_PATCHMON_AUTH}}" + mappings: + - field: total_hosts + label: Total Hosts + - field: hosts_needing_updates + label: Needs Updates + - field: security_updates + label: Security Updates + +- Docker: + - Proxmox Dockhand: + icon: dockhand.png + href: http://192.168.30.141:3000 + description: Proxmox Dockhand + + - MediaServer Dockge: + icon: dockge.png + href: http://192.168.30.135:5001 + description: MediaServer Dockge + + - SeaFile Dockge: + icon: dockge.png + href: http://192.168.30.159:5001 + description: SeaFile Dockge + +- Apps (SSO): + - Authentik: + icon: authentik.svg + href: https://sso.vogt.de.com/ + description: Authentik + + - OpenWebUI: + icon: open-webui.svg + href: https://openwebui.vogt.de.com/ + description: OpenWebUI + + - SeaFile: + icon: seafile.svg + href: https://seafile.vogt.de.com + description: SeaFile + + - Paperless-NGX: + icon: paperless-ngx.svg + href: https://paperless.vogt.de.com + description: Paperless-NGX + + - YouTrack: + icon: jetbrains-youtrack.svg + href: https://youtrack.vogt.de.com/ + description: YouTrack + + - Gitea: + icon: gitea.svg + href: https://git.vogt.de.com + description: Gitea + + - ByteStash: + icon: bytestash.svg + href: https://bytestash.vogt.de.com/ + description: ByteStash + + - KitchenOwl: + icon: kitchenowl.svg + href: https://kitchenowl.vogt.de.com + description: KitchenOwl + + - Mail-Archiver: + icon: mail-archiver.svg + href: https://mail-archiver.vogt.de.com + description: Mail-Archiver + + - Outline: + icon: outline.svg + href: https://outline.vogt.de.com + description: Outline + + - PgAdmin: + icon: pgadmin.svg + href: https://pgadmin.vogt.de.com/ + description: PgAdmin + + - Guacamole: + icon: guacamole.svg + href: https://guacamole.vogt.de.com/guacamole/ + description: Guacamole + + - Bookstack: + icon: bookstack.svg + href: https://bookstack.vogt.de.com + description: Bookstack + + - Wallos: + icon: wallos.png + href: https://wallos.vogt.de.com + description: Wallos + + - FreshRSS: + icon: freshrss.svg + href: https://freshrss.vogt.de.com/ + description: FreshRSS + + - IT-Tools: + icon: it-tools.svg + href: https://it-toolz.vogt.de.com + description: IT-Tools + +- Apps: + - n8n: + icon: n8n.svg + href: https://n8n.vogt.de.com/ + description: n8n + + - Vaultwarden: + icon: vaultwarden.svg + href: https://vaultwarden.vogt.de.com/ + description: Vaultwarden + + - Stirling-PDF: + icon: stirling-pdf.svg + href: https://mypdf.vogt.de.com + description: Stirling-PDF + + - Dispatcharr: + icon: dispatcharr.svg + href: http://192.168.30.160:9191 + description: Dispatcharr + + - NTFY: + icon: ntfy.svg + href: https://ntfy.vogt.de.com + description: NTFY + + - searXNG: + icon: searxng.svg + href: http://192.168.30.185:8888 + description: searXNG + + - MariaDB PhpMyAdmin: + icon: phpmyadmin.svg + href: http://192.168.30.187/phpMyAdmin/ + description: MariaDB PhpMyAdmin + + - Adminer: + icon: adminer.png + href: http://192.168.30.186/adminer/ + description: Adminer + + - TasmoBackup: + icon: tasmoadmin.png + href: http://192.168.30.141:8259 + description: TasmoBackup + +- Media Server: + - Homepage: + icon: homepage.png + href: http://192.168.30.135 + description: Homepage + + - FileBot Media Browser: + icon: filebot.svg + href: http://192.168.30.135:8090 + description: FileBot Media Browser + + - SabNZBd: + icon: sabnzbd.svg + href: http://192.168.30.135:8080 + description: SabNZBd + + - qBittorrent: + icon: qbittorrent.svg + href: http://192.168.30.135:8081 + description: qBittorrent + + - jDownloader: + icon: jdownloader.svg + href: http://192.168.30.135:8082/ + description: jDownloader + + - meTube: + icon: metube.svg + href: http://192.168.30.135:8083 + description: meTube + + - FileBot: + icon: filebot.svg + href: http://192.168.30.135:5800 + description: FileBot + + - Krusader: + icon: krusader.svg + href: "http://192.168.30.135:6081/vnc.html?resize=remote&host=192.168.30.135&port=6081&&autoconnect=1" + description: Krusader + + - HandBrake: + icon: handbrake.svg + href: http://192.168.30.135:7803 + description: HandBrake + + - MakeMKV: + icon: makemkv.png + href: http://192.168.30.135:5820 + description: MakeMKV + + - MediaElch: + icon: https://www.kvibes.de/img/mediaelch/icon.png + href: https://192.168.30.135:3001 + description: MediaElch + + - Unmanic: + icon: unmanic.png + href: http://192.168.30.135:8899/unmanic/ui/dashboard/ + description: Unmanic + + - MediaInfo: + icon: https://upload.wikimedia.org/wikipedia/commons/1/19/MediaInfo_Logo.svg + href: http://192.168.30.135:5810 + description: MediaInfo + + - MKVToolNix: + icon: mkvtoolnix.png + href: http://192.168.30.135:5830 + description: MKVToolNix + +- Media: + - Jellyfin: + icon: jellyfin.svg + href: https://jellyfin.vogt.de.com/ + description: Jellyfin + + - Emby: + icon: emby.svg + href: https://emby.vogt.de.com/ + description: Emby + + - Sonarr: + icon: sonarr.svg + href: https://sonarr.vogt.de.com/ + description: Sonarr + + - Seerr: + icon: overseerr.svg + href: https://os.vogt.de.com + description: Seerr diff --git a/settings.yaml b/settings.yaml new file mode 100644 index 0000000..e550a06 --- /dev/null +++ b/settings.yaml @@ -0,0 +1,39 @@ +--- +# For configuration options and examples, please see: +# https://gethomepage.dev/configs/settings/ + +title: Homelab +theme: dark +color: slate +headerStyle: boxed +target: _blank + +layout: + Infrastruktur: + style: row + columns: 4 + Smarthome: + style: row + columns: 4 + Monitoring: + style: row + columns: 4 + Docker: + style: row + columns: 4 + Apps (SSO): + style: row + columns: 6 + Apps: + style: row + columns: 6 + Media Server: + style: row + columns: 6 + Media: + style: row + columns: 6 + +providers: + openweathermap: openweathermapapikey + weatherapi: weatherapiapikey diff --git a/widgets.yaml b/widgets.yaml new file mode 100644 index 0000000..488d3e6 --- /dev/null +++ b/widgets.yaml @@ -0,0 +1,20 @@ +--- +# For configuration options and examples, please see: +# https://gethomepage.dev/configs/info-widgets/ + +- resources: + cpu: true + memory: true + disk: / + +- openmeteo: + label: Düsseldorf + latitude: 51.2115 + longitude: 6.7474 + timezone: Europe/Berlin + units: metric + cache: 5 + +- search: + provider: duckduckgo + target: _blank