diff --git a/src/app/pages/about/about.component.ts b/src/app/pages/about/about.component.ts index 08185d2..2651782 100644 --- a/src/app/pages/about/about.component.ts +++ b/src/app/pages/about/about.component.ts @@ -93,6 +93,12 @@ export class AboutComponent { externalLink: '', internalLink: 'projects', identifier: 'diploma', + }, + { + key: 'ABOUT.PROJECT.TRIBBLE', + externalLink: '', + internalLink: 'projects', + identifier: 'tribble-the-homeserver', } ]; diff --git a/src/app/pages/projects/projects.component.ts b/src/app/pages/projects/projects.component.ts index f192779..9f266ae 100644 --- a/src/app/pages/projects/projects.component.ts +++ b/src/app/pages/projects/projects.component.ts @@ -175,10 +175,15 @@ export class ProjectsComponent { featuredProject = computed(() => this.allProjects.find(p => p.isFeatured)); otherProjects = computed(() => this.allProjects.filter(p => !p.isFeatured)); - constructor() { this.route.queryParamMap.subscribe(params => { - // this.selectedKey.set(params.get('project')); + const projectIdentifier = params.get('project'); + if (projectIdentifier) { + const project = this.allProjects.find(p => p.identifier === projectIdentifier); + if (project) { + this.openProjectDialog(project); + } + } }); } diff --git a/src/assets/i18n/de.json b/src/assets/i18n/de.json index 097b0e6..e9f0708 100644 --- a/src/assets/i18n/de.json +++ b/src/assets/i18n/de.json @@ -186,6 +186,16 @@ "P2": "Verstehen und Einschätzen von wissenschaftlichen Arbeiten.", "P3": "Adaption und Weiterentwicklung von vorausgegangenen Forschungsarbeiten." } + }, + "TRIBBLE": { + "TITLE": "Homeserver 'Tribble'", + "DESCRIPTION": "In diesem Projekt geht es um die Einrichtung und Wartung meines eigenen Homeservers. Er betreibt mehrere Docker-Container wie Gitea, Jellyfin und mehr. Es ist eine großartige Lernerfahrung im Bereich Self-Hosting und Systemadministration.", + "LINK_INTERNAL": "Projektdetails", + "HIGHLIGHTS": { + "P1": "Self-Hosting verschiedener Dienste mit Docker.", + "P2": "CI/CD-Pipeline für die persönliche Website mit Gitea.", + "P3": "Sicherer Fernzugriff mit Tailscale und Traefik." + } } }, "EDUCATION": { @@ -242,7 +252,7 @@ "BULLET_4": "Die Seite ist Open Source und auf GitHub verfügbar." }, "TRIBBLE": { - "TITLE": "Trouble with tribbles", + "TITLE": "Ärger mit meinem Homeserver Tribble", "SHORT_DESCRIPTION": "Ein Projekt, das die Einrichtung und Wartung eines Homeservers beschreibt, auf dem verschiedene Docker-Container für Self-Hosting-Dienste laufen.", "INTRODUCTION": "Dieses Projekt dokumentiert die Einrichtung eines persönlichen Homeservers mit dem Spitznamen \"Tribble\". Es umfasst die Installation von Ubuntu Server und die Containerisierung von Diensten wie Gitea für die Versionskontrolle, Jellyfin für das Mediastreaming und AdGuard Home für das Blockieren von Werbung im Netzwerk. Der Server ist über Traefik als Reverse-Proxy und Tailscale für eine sichere Netzwerkverbindung mit dem Internet verbunden, was das Self-Hosting der CI/CD-Pipeline dieser Website ermöglicht.", "BULLET_1": "Self-Hosting verschiedener Dienste mit Docker.", diff --git a/src/assets/i18n/en.json b/src/assets/i18n/en.json index 98c5880..76c0077 100644 --- a/src/assets/i18n/en.json +++ b/src/assets/i18n/en.json @@ -186,6 +186,16 @@ "P2": "Understanding and evaluating scientific papers.", "P3": "Adaptation and further development of previous research work." } + }, + "TRIBBLE": { + "TITLE": "Homeserver 'Tribble'", + "DESCRIPTION": "This project is about setting up and maintaining my own homeserver. It runs several Docker containers like Gitea, Jellyfin, and more. It's a great learning experience in self-hosting and system administration.", + "LINK_INTERNAL": "Project details", + "HIGHLIGHTS": { + "P1": "Self-hosting of various services using Docker.", + "P2": "CI/CD pipeline for the personal website using Gitea.", + "P3": "Secure remote access with Tailscale and Traefik." + } } }, "EDUCATION": { @@ -242,7 +252,7 @@ "BULLET_4": "The site is open source and available on GitHub." }, "TRIBBLE": { - "TITLE": "Trouble with tribbles", + "TITLE": "Trouble with my homeserver tribble", "SHORT_DESCRIPTION": "A project detailing the setup and maintenance of a home server running various Docker containers for self-hosting services.", "INTRODUCTION": "This project documents the journey of setting up a personal home server, nicknamed \"Tribble\". It involves installing Ubuntu Server and containerizing services like Gitea for version control, Jellyfin for media streaming, and AdGuard Home for network-wide ad-blocking. The server is connected via Traefik as a reverse proxy and Tailscale for secure networking, enabling the self-hosted CI/CD pipeline for this website.", "BULLET_1": "Self-hosting of various services using Docker.",