diff --git a/src/pages/homelab/index.astro b/src/pages/homelab/index.astro index 7d2f108..8ac9aeb 100644 --- a/src/pages/homelab/index.astro +++ b/src/pages/homelab/index.astro @@ -29,51 +29,99 @@ import { services } from "./services.ts";
-

Homelab

+ +
+ Showing all apps +
+
+
+ + +
+

No Results

+
- {Object.entries(services).map(([category, apps], index) => ( -
- -
+
{apps.length > 0 ? ( apps.map(app => ( -
+
Coming soon...

)}
+
-
- ))} + ))} +
diff --git a/src/pages/homelab/services.ts b/src/pages/homelab/services.ts index 775ffb6..d145bb8 100644 --- a/src/pages/homelab/services.ts +++ b/src/pages/homelab/services.ts @@ -12,43 +12,50 @@ export const services = { name: "Silverbullet", link: "https://notes.justin.deal", icon: "https://cdn.jsdelivr.net/gh/selfhst/icons/png/silverbullet.png", - alt: "Silverbullet" + alt: "Silverbullet", + tags: ["notes", "markdown", "knowledge base"] }, { name: "Vikunja", link: "https://todo.justin.deal", icon: "https://cdn.jsdelivr.net/gh/selfhst/icons/svg/vikunja.svg", - alt: "Vikunja" + alt: "Vikunja", + tags: ["todo", "tasks", "productivity"] }, { name: "Actual", link: "https://budget.justin.deal", icon: "https://cdn.jsdelivr.net/gh/selfhst/icons/svg/actual-budget.svg", - alt: "Actual" + alt: "Actual", + tags: ["finance", "budget", "money"] }, { name: "Searxng", link: "https://search.justin.deal", icon: "https://cdn.jsdelivr.net/gh/selfhst/icons/svg/searxng.svg", - alt: "Searxng" + alt: "Searxng", + tags: ["search", "privacy", "metasearch"] }, { name: "TeslaMate", link: "https://tesla.justin.deal", icon: "https://cdn.jsdelivr.net/gh/selfhst/icons/svg/teslamate.svg", - alt: "TeslaMate" + alt: "TeslaMate", + tags: [] }, { name: "BaiKal", link: "https://dav.justin.deal", icon: "https://cdn.jsdelivr.net/gh/selfhst/icons/png/baikal.png", - alt: "BaiKal" + alt: "BaiKal", + tags: [] }, { name: "Cryptpad", link: "https://docs.justin.deal", icon: "https://cdn.jsdelivr.net/gh/selfhst/icons/svg/cryptpad.svg", - alt: "Cryptpad" + alt: "Cryptpad", + tags: [] } ], Development: [ @@ -56,19 +63,22 @@ export const services = { name: "Gitea", link: "https://code.justin.deal", icon: "https://cdn.jsdelivr.net/gh/selfhst/icons/svg/gitea.svg", - alt: "Gitea" + alt: "Gitea", + tags: [] }, { name: "OpenGist", link: "https://snippets.justin.deal", icon: "https://cdn.jsdelivr.net/gh/selfhst/icons/svg/opengist.svg", - alt: "OpenGist" + alt: "OpenGist", + tags: [] }, { name: "IT-Tools", link: "https://tools.justin.deal", icon: "https://cdn.jsdelivr.net/gh/selfhst/icons/svg/it-tools.svg", - alt: "IT-Tools" + alt: "IT-Tools", + tags: [] } ], Media: [ @@ -76,13 +86,15 @@ export const services = { name: "Jellyfin", link: "https://watch.justin.deal", icon: "https://cdn.jsdelivr.net/gh/selfhst/icons/svg/jellyfin.svg", - alt: "Jellyfin" + alt: "Jellyfin", + tags: [] }, { name: "Calibre-Web", link: "https://books.justin.deal", icon: "https://cdn.jsdelivr.net/gh/selfhst/icons/svg/calibre-web.svg", - alt: "Calibre-Web" + alt: "Calibre-Web", + tags: [] } ], Infrastructure: [ @@ -90,37 +102,43 @@ export const services = { name: "Pi-hole", link: "https://pihole.justin.deal", icon: "https://cdn.jsdelivr.net/gh/selfhst/icons/svg/pi-hole.svg", - alt: "Pi-hole" + alt: "Pi-hole", + tags: [] }, { name: "Ntfy", link: "https://ntfy.justin.deal", icon: "https://cdn.jsdelivr.net/gh/selfhst/icons/svg/ntfy.svg", - alt: "Ntfy" + alt: "Ntfy", + tags: [] }, { name: "Vaultwarden", link: "https://passwords.justin.deal", icon: "https://cdn.jsdelivr.net/gh/selfhst/icons/svg/vaultwarden.svg", - alt: "Vaultwarden" + alt: "Vaultwarden", + tags: [] }, { name: "Uptime Kuma", link: "https://status.justin.deal", icon: "https://cdn.jsdelivr.net/gh/selfhst/icons/svg/uptime-kuma.svg", - alt: "Uptime Kuma" + alt: "Uptime Kuma", + tags: [] }, { name: "Authentik", link: "https://auth.justin.deal", icon: "https://cdn.jsdelivr.net/gh/selfhst/icons/svg/authentik.svg", - alt: "Authentik" + alt: "Authentik", + tags: [] }, { name: "Traefik", link: "https://proxy.justin.deal:8080", icon: "https://cdn.jsdelivr.net/gh/selfhst/icons/svg/traefik.svg", - alt: "Traefik" + alt: "Traefik", + tags: [] } ] - }; \ No newline at end of file + };