Consolidate all moonweb sites into single Eleventy config

- Single eleventy.config.js at root with computed pathPrefix per section
- Accent colors inlined in base.njk (no per-site theme.css needed)
- Hub pages output at root via explicit permalinks
- Per-section sitemaps with tag-based collections
- .eleventyignore excludes stefankoelle, timecapsule, markdown files
- Deleted: 5 per-site configs, merge script
- Simplified: package.json (single build/dev commands)
- Simplified: GitHub Actions workflow (no matrix, no merge job)
- Fixed: parent links for sub-site detail pages
This commit is contained in:
2026-09-11 12:31:47 +02:00
parent 10b05736c8
commit c77ad91e0e
58 changed files with 220 additions and 324 deletions
+2 -1
View File
@@ -1,9 +1,10 @@
---
title: "Page Not Found"
section: "infra"
tags: "infra"
description: "The page you are looking for does not exist."
layout: base.njk
permalink: /404.html
permalink: /infra/404.html
---
<div class="error-page">
<h1>404</h1>
+2 -1
View File
@@ -1,7 +1,8 @@
---
title: "Backup Strategy"
section: "infra"
parent: "/"
tags: "infra"
parent: "/infra/"
description: "Layered 3-2-1 backup strategy covering NAS snapshots, offsite copies, and cloud storage."
layout: base.njk
---
+2 -1
View File
@@ -1,7 +1,8 @@
---
title: "Xubuntu Dev VM"
section: "infra"
parent: "/"
tags: "infra"
parent: "/infra/"
description: "A disposable, daily-backed-up Xubuntu VM for AI-assisted, remote development via SSH and Chrome Remote Desktop."
layout: base.njk
---
+2 -1
View File
@@ -1,7 +1,8 @@
---
title: "Docker Container Strategy"
section: "infra"
parent: "/"
tags: "infra"
parent: "/infra/"
description: "How self-hosted services are organized across three Docker hosts on Proxmox and Synology, using Docker Compose as the single source of truth."
layout: base.njk
---
-20
View File
@@ -1,20 +0,0 @@
module.exports = function (eleventyConfig) {
eleventyConfig.addGlobalData("site", { url: "https://www.moonweb.org", pathPrefix: "/infra" });
eleventyConfig.addFilter("date", (d) => d.toISOString());
eleventyConfig.addPassthroughCopy({ "shared/theme-infra.css": "theme.css" });
eleventyConfig.addPassthroughCopy({ "shared/base.css": "shared-base.css" });
eleventyConfig.addPassthroughCopy({ "shared/favicon/infra.svg": "favicon.svg" });
eleventyConfig.addPassthroughCopy({ "infra/robots.txt": "robots.txt" });
return {
dir: {
input: "infra",
includes: "../shared/_includes",
output: "dist/infra"
},
serverOptions: {
host: "0.0.0.0",
port: 8082
}
};
};
+1
View File
@@ -1,6 +1,7 @@
---
title: "Homelab Infrastructure — Proxmox, Docker & Networking | moonweb"
section: "infra"
tags: "infra"
description: "Homelab infrastructure overview: Proxmox hosts, Synology NAS, Docker VMs and Setup-Guides."
layout: base.njk
sections:
+2 -1
View File
@@ -1,7 +1,8 @@
---
title: "LXC Container Strategy"
section: "infra"
parent: "/"
tags: "infra"
parent: "/infra/"
description: "Overview of the lightweight LXC containers running on the main Proxmox host, and why they are LXC instead of Docker."
layout: base.njk
---
+2 -1
View File
@@ -1,7 +1,8 @@
---
title: "Monitoring"
section: "infra"
parent: "/"
tags: "infra"
parent: "/infra/"
description: "Prometheus and Grafana monitoring stack for hosts, containers, and hardware metrics."
layout: base.njk
---
+2 -1
View File
@@ -1,7 +1,8 @@
---
title: "OpenWrt Multi-WAN Router"
section: "infra"
parent: "/"
tags: "infra"
parent: "/infra/"
description: "Multi-WAN OpenWrt router in the study with WiFi and Powerline failover, plus VLAN 189 for IoT isolation."
layout: base.njk
---
+2 -1
View File
@@ -1,7 +1,8 @@
---
title: "Proxmox Virtualization"
section: "infra"
parent: "/"
tags: "infra"
parent: "/infra/"
description: "What Proxmox VE is, the hardware it runs on in my homelab, its key advantages, and a short setup walkthrough."
layout: base.njk
---
+2 -1
View File
@@ -1,5 +1,6 @@
---
permalink: /sitemap.xml
permalink: /infra/sitemap.xml
sitemapCollection: "infra"
eleventyExcludeFromCollections: true
---
{% include "sitemap.njk" %}
+2 -1
View File
@@ -1,7 +1,8 @@
---
title: "Synology NAS"
section: "infra"
parent: "/"
tags: "infra"
parent: "/infra/"
description: "Model, storage setup and current role of the Synology NAS in the homelab after the late-2025 cleanup."
layout: base.njk
---