diff --git a/proxmox/homepage/README.md b/proxmox/homepage/README.md index e69de29..88191c0 100644 --- a/proxmox/homepage/README.md +++ b/proxmox/homepage/README.md @@ -0,0 +1 @@ +# Homepage \ No newline at end of file diff --git a/proxmox/homepage/config/bookmarks.yaml b/proxmox/homepage/config/bookmarks.yaml new file mode 100644 index 0000000..3645fec --- /dev/null +++ b/proxmox/homepage/config/bookmarks.yaml @@ -0,0 +1,92 @@ +--- +- Repositories: + - Homelab: + - icon: si-github-#FFFFFF + href: https://github.com/twhite96/homelab-config + description: Homelab config + - Homelab Docs: + - icon: si-github-#FFFFFF + href: https://github.com/twhite96/tifflabs + description: Homelab repo + +- Selfhosted Projects: + - tiff labs: + - icon: /icons/tifflabsgit.png + href: https://tifflabs-software.org + description: Labs software hosting + - cyber: + - icon: /icons/htbavatar.png + href: https://projects.0x8c.run + description: '0x8c project hosting' + +- Cloud Platforms: + - Linode: + - icon: /icons/linode.png + href: https://cloud.linode.com/linodes + description: Linode + - Hetzner: + - icon: si-hetzner-#D50C2D + href: https://accounts.hetzner.com/login + description: Hetzner + +- Hosting Platforms: + - Vercel: + - icon: si-vercel-#000000 + href: https://vercel.com/dashboard + description: Vercel + - Cloudron: + - icon: si-cloudron-#03A9F4 + href: https://console.cloudron.io/#/cloudron/94ea2702-ac33-4b80-a81a-b4af56df058e + description: Cloudron + +- Documentation: + - Docs site: + - icon: si-materialformkdocs-#ff0000 + href: https://docs.tifflabs.org + description: Smart home docs + - labs.network: + - icon: si-bookstack-#B91C1C + href: https://presto-horn.tifflabs.org + description: Network wiki + +- Public Projects: + - Homelab Config: + - icon: /icons/tifflabs.svg + href: https://homelab.tiff.tools + description: Homelab Config + - Forgejo Homelab Projects: + - icon: si-forgejo-#FB923C + href: https://tifflabs-software.org/explore + description: Public personal projects + +- Cyber Learning: + - Hack The Box: + - icon: si-hackthebox-#9FEF00 + href: https://academy.hackthebox.com + description: HTB Academy + - TryHackMe: + - icon: si-tryhackme-#88CC15 + href: https://tryhackme.com/ + description: TryHackMe + +- Productivity: + - Email: + - icon: si-protonmail-#6D4AFF + href: https://mail.proton.me/ + description: Email + - Calendar: + - icon: si-protoncalendar-#50B0E9 + href: https://calendar.proton.me + description: Calendar + +- Public Notes and Writeups: + - Notes: + - icon: si-obsidian-#7C3AED + href: https://notes.0x8c.org + description: Public Notes + - Wiki: + icon: si-gitbook-#BBDDE5 + href: https://app.gitbook.com/?source=pwa + description: Write-ups + + diff --git a/proxmox/homepage/config/custom.css b/proxmox/homepage/config/custom.css new file mode 100644 index 0000000..e69de29 diff --git a/proxmox/homepage/config/custom.js b/proxmox/homepage/config/custom.js new file mode 100644 index 0000000..e69de29 diff --git a/proxmox/homepage/config/docker.yaml b/proxmox/homepage/config/docker.yaml new file mode 100644 index 0000000..e69de29 diff --git a/proxmox/homepage/config/kubernetes.yaml b/proxmox/homepage/config/kubernetes.yaml new file mode 100644 index 0000000..e69de29 diff --git a/proxmox/homepage/config/services.yaml b/proxmox/homepage/config/services.yaml new file mode 100644 index 0000000..c3ccff1 --- /dev/null +++ b/proxmox/homepage/config/services.yaml @@ -0,0 +1,107 @@ +--- +- Infrastructure and Data: + - Proxmox: + href: {{proxmox-url}} + icon: proxmox.svg + description: prx-prod-2 + siteMonitor: {{proxmox-url}} + widget: + type: proxmox + url: {{proxmox-url}} + username: {{HOMEPAGE_VAR_PROXMOX_USERNAME}} + password: {{HOMEPAGE_VAR_PROXMOX_PASSWORD}} + + - Authentik: + icon: authentik.png + showStats: true + href: {{url}} + widget: + type: authentik + fields: ["users"] + url: {{url}} + key: {{HOMEPAGE_VAR_AUTHENTIK_KEY}} + +- Monitoring: + - UptimeKuma: + icon: uptime-kuma.svg + href: https://uptime.tifflabs.org + widget: + description: uptime on pve main + fields: ["up", "down", "uptime", "incident"] + icon: uptime-kuma.svg + type: uptimekuma + url: {{url}} + slug: lab + - Pi-hole: + icon: pi-hole.svg + siteMonitor: {{url}} + widget: + type: pihole + fields: ["queries", "blocked", "blocked_percent", "gravity"] + url: {{url}} # required if running v6 or higher, defaults to 5 + key: {{HOMEPAGE_VAR_PIHOLE_TOKEN}} + - Grafana: + icon: grafana.svg + siteMonitor: {{url}} + widget: + type: grafana + fields: ["dashboards", "datasources", "totalalerts", "alertstriggered"] + url: {{url}} + username: tifflabs + password: {{HOMEPAGE_VAR_GRAFANA_PASSWORD}} + - Tailscale: + icon: tailscale.svg + showStats: true + widget: + type: tailscale + fields: ["address", "last_seen", "expires"] + deviceid: {{device-id}} + key: {{key}} + +- Media: + - Jellyfin: + icon: jellyfin.svg + description: tailnet jellyfin + widget: + type: jellyfin + url: {{url}} + fields: ["movies", "series", "episodes", "songs"] + key: {{HOMEPAGE_VAR_JELLYFIN_KEY}} + enableBlocks: true # optional, defaults to false + enableNowPlaying: true # optional, defaults to true + enableUser: true # optional, defaults to false + showEpisodeNumber: true # optional, defaults to false + expandOneStreamToTwoRows: false # optional, defaults to true + - Calibre: + icon: calibre.svg + siteMonitor: https://books.tiffs.app + href: 'https://books.tiffs.app' + widget: + type: calibreweb + url: https://books.tiffs.app + fields: ["books", "authors", "categories", "series"] + username: {{username}} + password: {{password}} + - FreshRSS: + icon: freshrss.svg + description: RSS Feed + href: https://rss.tifflabs.dev + showStats: true + widget: + type: freshrss + url: https://rss.tifflabs.dev + fields: ["subscriptions", "unread"] + username: {{username}} + password: {{password}} + + - Audiobookshelf: + icon: audiobookshelf.svg + siteMonitor: https://audiobooks.tiffs.app + href: https://audiobooks.tiffs.app + description: Audiobook Library + showStats: true + widget: + type: audiobookshelf + fields: ["podcasts", "podcastsDuration", "books", "booksDuration"] + url: https://audiobooks.tiffs.app + key: {{HOMEPAGE_VAR_AUDIOBOOKSHELF_KEY}} diff --git a/proxmox/homepage/config/settings.yaml b/proxmox/homepage/config/settings.yaml new file mode 100644 index 0000000..90a107d --- /dev/null +++ b/proxmox/homepage/config/settings.yaml @@ -0,0 +1,74 @@ +--- +title: Dash +headerStyle: clean + +background: + blur: xl + brightness: 90 + opacity: 60 + +cardBlur: sm + +useEqualHeights: true + +providers: + + +quicklaunch: + searchDescriptions: true + hideInternetSearch: true + showSearchSuggestions: true + hideVisitURL: true + +layout: + - Services: + Infrastructure and Data: + icon: proxmox.svg + style: row + columns: 2 + Monitoring: + icon: grafana.svg + style: row + columns: 4 + Media: + icon: jellyfin.svg + style: row + columns: 4 + + - Bookmarks: + Repositories: + icon: github.svg + style: row + columns: 2 + Selfhosted Projects: + icon: codeberg.svg + style: row + columns: 2 + Cloud Platforms: + icon: hetzner.svg + style: row + columns: 2 + Hosting Platforms: + icon: cloudron.svg + style: row + columns: 2 + Documentation: + icon: bookstack.svg + style: row + columns: 2 + Public Projects: + icon: forgejo.svg + style: row + columns: 2 + Cyber Learning: + icon: hackthebox.svg + style: row + columns: 2 + Productivity: + icon: protonmail.svg + style: row + columns: 2 + Public Notes and Writeups: + icon: obsidian.svg + style: row + columns: 2 \ No newline at end of file diff --git a/proxmox/homepage/config/widgets.yaml b/proxmox/homepage/config/widgets.yaml new file mode 100644 index 0000000..a98fa4f --- /dev/null +++ b/proxmox/homepage/config/widgets.yaml @@ -0,0 +1,26 @@ +--- +- resources: + cpu: true + memory: true + disk: / + +- search: + provider: custom + url: # whoogle # google, duckduckgo, bing, baidu, brave or custom + focus: true + target: _blank # One of _self, _blank, _parent or _top + +- openweathermap: + latitude: {{long}} + longitude: {{lat}} + units: imperial # or imperial + provider: openweathermap + cache: 5 # Time in minutes to cache API responses, to stay within limits + format: # optional, Intl.NumberFormat options + maximumFractionDigits: 0 + +- datetime: + text_size: m + format: + timeStyle: short + hourCycle: h12 \ No newline at end of file diff --git a/proxmox/homepage/docker-compose.yaml b/proxmox/homepage/docker-compose.yaml new file mode 100644 index 0000000..158f008 --- /dev/null +++ b/proxmox/homepage/docker-compose.yaml @@ -0,0 +1,14 @@ +--- +services: + homepage: + image: ghcr.io/gethomepage/homepage:latest + container_name: homepage-prod-1 + ports: + - 3000:3000 + env_file: + - ".env.example" + volumes: + - ./config:/app/config # Make sure your local config directory exists + - ./images:/app/public/images + - ./icons:/app/public/icons + restart: unless-stopped \ No newline at end of file diff --git a/proxmox/homepage/icons/htbavatar.png b/proxmox/homepage/icons/htbavatar.png new file mode 100644 index 0000000..b3336b4 Binary files /dev/null and b/proxmox/homepage/icons/htbavatar.png differ diff --git a/proxmox/homepage/icons/labsn.svg b/proxmox/homepage/icons/labsn.svg new file mode 100644 index 0000000..0c057a8 --- /dev/null +++ b/proxmox/homepage/icons/labsn.svg @@ -0,0 +1,340 @@ + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/proxmox/homepage/icons/linode-icon.svg b/proxmox/homepage/icons/linode-icon.svg new file mode 100644 index 0000000..248a199 --- /dev/null +++ b/proxmox/homepage/icons/linode-icon.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/proxmox/homepage/icons/linode.png b/proxmox/homepage/icons/linode.png new file mode 100644 index 0000000..888479b Binary files /dev/null and b/proxmox/homepage/icons/linode.png differ diff --git a/proxmox/homepage/icons/materialformkdocs.svg b/proxmox/homepage/icons/materialformkdocs.svg new file mode 100644 index 0000000..ba7047b --- /dev/null +++ b/proxmox/homepage/icons/materialformkdocs.svg @@ -0,0 +1 @@ +Material for MkDocs \ No newline at end of file diff --git a/proxmox/homepage/icons/tcm-logo.png b/proxmox/homepage/icons/tcm-logo.png new file mode 100644 index 0000000..3dbb741 Binary files /dev/null and b/proxmox/homepage/icons/tcm-logo.png differ diff --git a/proxmox/homepage/icons/tifflabs.svg b/proxmox/homepage/icons/tifflabs.svg new file mode 100644 index 0000000..e0c2d17 --- /dev/null +++ b/proxmox/homepage/icons/tifflabs.svg @@ -0,0 +1,7 @@ + + + 1 + + + + \ No newline at end of file diff --git a/proxmox/homepage/icons/tifflabsgit.png b/proxmox/homepage/icons/tifflabsgit.png new file mode 100644 index 0000000..a50eb98 Binary files /dev/null and b/proxmox/homepage/icons/tifflabsgit.png differ