Files
moonweb-site/code/index.njk
T
stefankoelle c77ad91e0e 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
2026-09-11 12:31:47 +02:00

34 lines
1013 B
Plaintext

---
title: "Open Source Projects — GitHub Repos & Code | moonweb"
section: "code"
tags: "code"
description: "Curated catalog of my public GitHub projects — automation, dev tools, web apps, and firmware."
layout: base.njk
subcategories:
- "Smart Home Apps"
- "Maker Firmware"
- "Dev Tools"
- "Infra Tools"
- "Retro"
- "Web Projects"
---
<p class="site-intro">A curated catalog of my public GitHub projects, sorted by topic.</p>
{% for subcat in subcategories %}
<section class="card-section">
<h2>{{ subcat }}</h2>
<div class="card-grid">
{% for repo in repos %}
{% if repo.subcategory == subcat %}
<a class="card" href="{{ repo.repo_url }}">
{% if repo.emoji %}<span class="card-emoji">{{ repo.emoji }}</span>{% endif %}
<h3>{{ repo.title }}</h3>
<p>{{ repo.summary }}</p>
{% if repo.stack %}<span class="card-stack">{{ repo.stack | join(", ") }}</span>{% endif %}
</a>
{% endif %}
{% endfor %}
</div>
</section>
{% endfor %}