Fix: Markdown-Downloads nicht mehr als application/zip ausliefern
Ursache: nginx location /downloads/ mit default_type application/zip — .md fehlt in mime.types, Browser speichern Listen als .zip. - fulfill/nginx.snippet.conf: types für zip/md/txt/pdf, default octet-stream - HTML: download="<dateiname>.md" an allen Markdown-Links (33) - HANDOFF Abschnitt 13, README-Hinweis Live-Site-Config (/etc/nginx/sites-available/ki-buch-archive) braucht noch sudo-Anpassung + nginx reload; nicht in diesem Commit.
This commit is contained in:
1 parent
7d1f65ea5b
commit
9b5db2d3eb
17 files changed
+62
-35
No files matched your search
@@ -7,6 +7,13 @@
|
||||
|
||||
## Letzte Arbeit (committed)
|
||||
|
||||
### 13. Markdown-Downloads als ZIP (09.11., Branch `md-download-2026-11-09`, nicht gepusht)
|
||||
- Symptom: Listen wie „Drei Fragen an das System“ speichern der Browser als `.zip`, Inhalt ist `.md`.
|
||||
- Ursache Live (nginx VM 300, `/etc/nginx/sites-available/ki-buch-archive`): `location /downloads/ { default_type application/zip; … }` — `.md` fehlt in `mime.types`, landet deshalb als ZIP; `Content-Disposition: attachment` ohne Dateiname.
|
||||
- Repo-Fix: `fulfill/nginx.snippet.conf` mit korrekten `types` (zip/md/txt/pdf) und `default_type application/octet-stream`; alle Markdown-Links bekommen `download="<dateiname>.md"` (33 Stellen in 14 HTML-Dateien).
|
||||
- Live-Schaltung braucht zusätzlich sudo-Edit der Site-Config + `nginx -t` + reload (siehe Commit/HANDOFF); Snippet allein ändert den laufenden nginx nicht.
|
||||
|
||||
|
||||
### 13. Coding-Agents-Buchseite 07.11. (Branch `coding-agents-buchseite-2026-11-07`, ff nach `main`, gemergt, nicht deployt)
|
||||
- Auftrag: Buchseite im Schwesterprojekt aktualisieren (Richie 07.11.2026).
|
||||
- Buch-Repo `main` = `origin/main` = `a1b2505` (AP4–AP8 + BP-07 gepusht). eBook 252 S., Print 300 S., Wörter 58 389. Behebungsplan abgeschlossen; Ampel GELB (AP3-Band 214 Rest; Rescore 81,3 als Untergrenze).
|
||||
|
||||
@@ -72,6 +72,7 @@ ki-buch-archive/ # Repo-Name; Domain: books.maatini.space
|
||||
| `/projects/agents-angular-spring-quarkus/` | Begleit-Service Agents mit Angular, Spring Boot & Quarkus |
|
||||
| `/downloads/<slug>/*.zip` | Mitmach-Material |
|
||||
| `/downloads/<slug>/MANIFEST.txt` | SHA256 und material-Version |
|
||||
| `/downloads/<slug>/*.md` | Markdown-Spiegel (MIME `text/markdown`, siehe `fulfill/nginx.snippet.conf`) |
|
||||
|
||||
---
|
||||
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
# In den Server-Block von books.maatini.space einfügen.
|
||||
# Statische Site unverändert; nur /api/ und /d/ an den Python-Dienst.
|
||||
# In den Server-Block von books.maatini.space einfügen
|
||||
# (Live: /etc/nginx/sites-available/ki-buch-archive auf VM 300).
|
||||
# Statische Site unverändert; /api/ und /d/ an den Python-Dienst;
|
||||
# /downloads/ mit korrekten MIME-Typen (nicht alles als ZIP).
|
||||
|
||||
location /api/ {
|
||||
proxy_pass http://127.0.0.1:8787;
|
||||
@@ -15,3 +17,20 @@ location /d/ {
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_read_timeout 120s;
|
||||
}
|
||||
|
||||
# Mitmach-Material: ZIP, Markdown, TXT, PDF.
|
||||
# Wichtig: default_type darf NICHT application/zip sein — sonst werden
|
||||
# .md-Dateien (fehlen in mime.types) als ZIP ausgeliefert und Browser
|
||||
# speichern sie mit .zip-Endung (Stand vor Fix 2026-11-09).
|
||||
location /downloads/ {
|
||||
types {
|
||||
application/zip zip;
|
||||
text/markdown md markdown;
|
||||
text/plain txt;
|
||||
application/pdf pdf;
|
||||
}
|
||||
default_type application/octet-stream;
|
||||
charset utf-8;
|
||||
charset_types text/markdown text/plain;
|
||||
add_header Content-Disposition attachment;
|
||||
}
|
||||
@@ -132,7 +132,7 @@
|
||||
<p><strong>Buch-Konzept bleibt gültig.</strong> Prinzipien tool-frei; Copilot = Worked Example.</p>
|
||||
<p>
|
||||
<strong>Buch:</strong> Kap. 2, Anhang C ·
|
||||
<strong>Material:</strong> <a href="/downloads/agents-angular-spring-quarkus/agent-mapping.md" download><code>agent-mapping.md</code></a>
|
||||
<strong>Material:</strong> <a href="/downloads/agents-angular-spring-quarkus/agent-mapping.md" download="agent-mapping.md"><code>agent-mapping.md</code></a>
|
||||
</p>
|
||||
</article>
|
||||
|
||||
|
||||
@@ -74,7 +74,7 @@
|
||||
Prinzipien sind tool-unabhängig; die Concrete-Beispiele nutzen
|
||||
<strong>GitHub Copilot</strong> (Instructions, path-instructions, Skills).
|
||||
Anderer Harness: Mapping unter
|
||||
<a href="/downloads/agents-angular-spring-quarkus/agent-mapping.md" download><code>agent-mapping.md</code></a>
|
||||
<a href="/downloads/agents-angular-spring-quarkus/agent-mapping.md" download="agent-mapping.md"><code>agent-mapping.md</code></a>
|
||||
(Anhang C) und Schwester-Begleit-Services bei Bedarf.
|
||||
</p>
|
||||
</div>
|
||||
@@ -157,7 +157,7 @@
|
||||
</p>
|
||||
<p class="filename">command-referenz.md · companion-0.1.0</p>
|
||||
</div>
|
||||
<a class="btn btn--primary" href="/downloads/agents-angular-spring-quarkus/command-referenz.md" download>Markdown herunterladen</a>
|
||||
<a class="btn btn--primary" href="/downloads/agents-angular-spring-quarkus/command-referenz.md" download="command-referenz.md">Markdown herunterladen</a>
|
||||
</article>
|
||||
|
||||
<article class="download-card">
|
||||
@@ -169,7 +169,7 @@
|
||||
</p>
|
||||
<p class="filename">agent-mapping.md · companion-0.1.0</p>
|
||||
</div>
|
||||
<a class="btn btn--primary" href="/downloads/agents-angular-spring-quarkus/agent-mapping.md" download>Markdown herunterladen</a>
|
||||
<a class="btn btn--primary" href="/downloads/agents-angular-spring-quarkus/agent-mapping.md" download="agent-mapping.md">Markdown herunterladen</a>
|
||||
</article>
|
||||
</div>
|
||||
<p class="reviewed-line">
|
||||
|
||||
@@ -110,7 +110,7 @@
|
||||
SHA256: 1dd82775e62685767a16dac4cc22a9f27b7261019caf59eb59834bb121800b3a
|
||||
</p>
|
||||
</div>
|
||||
<a class="btn btn--primary" href="/downloads/agents-angular-spring-quarkus/command-referenz.md" download>Markdown herunterladen</a>
|
||||
<a class="btn btn--primary" href="/downloads/agents-angular-spring-quarkus/command-referenz.md" download="command-referenz.md">Markdown herunterladen</a>
|
||||
</article>
|
||||
|
||||
<article class="download-card">
|
||||
@@ -126,7 +126,7 @@
|
||||
SHA256: 4e54d504e0de639375a40692e0360ef803ea3395d4476b615ba41a6510b455d1
|
||||
</p>
|
||||
</div>
|
||||
<a class="btn btn--primary" href="/downloads/agents-angular-spring-quarkus/agent-mapping.md" download>Markdown herunterladen</a>
|
||||
<a class="btn btn--primary" href="/downloads/agents-angular-spring-quarkus/agent-mapping.md" download="agent-mapping.md">Markdown herunterladen</a>
|
||||
</article>
|
||||
</div>
|
||||
|
||||
|
||||
@@ -116,8 +116,8 @@
|
||||
<ul>
|
||||
<li>Buch: Kap. 1–2 (These 7 invers, mentales Modell), Kap. 4 (Repo-Zielbild), Kap. 8–9 (Slices, DoD/Verify), Kap. 10 (Instructions/Skills/MCP)</li>
|
||||
<li>Material: <a href="/projects/agents-angular-spring-quarkus/material/">Vorlagen, Checklisten & Anhänge</a></li>
|
||||
<li>Commands: <a href="/downloads/agents-angular-spring-quarkus/command-referenz.md" download><code>command-referenz.md</code></a></li>
|
||||
<li>Transfer: <a href="/downloads/agents-angular-spring-quarkus/agent-mapping.md" download><code>agent-mapping.md</code></a></li>
|
||||
<li>Commands: <a href="/downloads/agents-angular-spring-quarkus/command-referenz.md" download="command-referenz.md"><code>command-referenz.md</code></a></li>
|
||||
<li>Transfer: <a href="/downloads/agents-angular-spring-quarkus/agent-mapping.md" download="agent-mapping.md"><code>agent-mapping.md</code></a></li>
|
||||
<li>Symptom-Hilfe: <a href="/projects/agents-angular-spring-quarkus/hilfe/">Schnelle Hilfe</a></li>
|
||||
<li>Stack-Primärdoku + eure gepinnten Versionen (Node, JDK, Angular, Spring, Quarkus)</li>
|
||||
</ul>
|
||||
|
||||
@@ -208,7 +208,7 @@
|
||||
<p>
|
||||
<strong>Buch:</strong> Kap. 15, Anhang B ·
|
||||
<strong>Material:</strong>
|
||||
<a href="/downloads/coding-agents-praxis/stack-orientierung.md" download><code>stack-orientierung.md</code></a>
|
||||
<a href="/downloads/coding-agents-praxis/stack-orientierung.md" download="stack-orientierung.md"><code>stack-orientierung.md</code></a>
|
||||
</p>
|
||||
</article>
|
||||
|
||||
|
||||
@@ -89,7 +89,7 @@
|
||||
und Reife-Assessment (über den PDF-Snapshot Anhang A hinaus — Vereinfachung, kein Erratum).
|
||||
Download unter <a href="/projects/coding-agents-praxis/material/">Material</a>
|
||||
bzw. direkt
|
||||
<a href="/downloads/coding-agents-praxis/stack-orientierung.md" download><code>stack-orientierung.md</code></a>.
|
||||
<a href="/downloads/coding-agents-praxis/stack-orientierung.md" download="stack-orientierung.md"><code>stack-orientierung.md</code></a>.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
@@ -245,7 +245,7 @@
|
||||
</p>
|
||||
<p class="filename">stack-orientierung.md · companion-0.1.6</p>
|
||||
</div>
|
||||
<a class="btn btn--primary" href="/downloads/coding-agents-praxis/stack-orientierung.md" download>Markdown herunterladen</a>
|
||||
<a class="btn btn--primary" href="/downloads/coding-agents-praxis/stack-orientierung.md" download="stack-orientierung.md">Markdown herunterladen</a>
|
||||
</article>
|
||||
</div>
|
||||
|
||||
|
||||
@@ -114,7 +114,7 @@
|
||||
SHA256: 1443cebf5d6a582c7e465fe35f8524e9b2990949b3acf25ef381607daed84328
|
||||
</p>
|
||||
</div>
|
||||
<a class="btn btn--primary" href="/downloads/coding-agents-praxis/stack-orientierung.md" download>Markdown herunterladen</a>
|
||||
<a class="btn btn--primary" href="/downloads/coding-agents-praxis/stack-orientierung.md" download="stack-orientierung.md">Markdown herunterladen</a>
|
||||
</article>
|
||||
</div>
|
||||
|
||||
|
||||
@@ -120,7 +120,7 @@
|
||||
<ul>
|
||||
<li>Buch: Kap. 1–4 (Thesen, Context, Praxis-Artefakte), Kap. 10 (DoD), Kap. 15 (Stack-Wahl), Kap. 19 (Katalog)</li>
|
||||
<li>Material: <a href="/projects/coding-agents-praxis/material/">Vorlagen, Checklisten & Stack-Orientierung</a></li>
|
||||
<li>Stack-Rankings: <a href="/downloads/coding-agents-praxis/stack-orientierung.md" download><code>stack-orientierung.md</code></a> (Anhang B)</li>
|
||||
<li>Stack-Rankings: <a href="/downloads/coding-agents-praxis/stack-orientierung.md" download="stack-orientierung.md"><code>stack-orientierung.md</code></a> (Anhang B)</li>
|
||||
<li>Symptom-Hilfe: <a href="/projects/coding-agents-praxis/hilfe/">Schnelle Hilfe</a></li>
|
||||
<li>Euer Tool: aktuelle Doku, <code>--help</code> / Slash-Menü, Versionsstring notieren</li>
|
||||
</ul>
|
||||
|
||||
@@ -194,7 +194,7 @@
|
||||
<p>
|
||||
<strong>Buch:</strong> Kap. 10 ·
|
||||
<strong>Material:</strong>
|
||||
<a href="/downloads/ki-hinterm-vorhang/lese-checkliste.md" download><code>lese-checkliste.md</code></a>
|
||||
<a href="/downloads/ki-hinterm-vorhang/lese-checkliste.md" download="lese-checkliste.md"><code>lese-checkliste.md</code></a>
|
||||
</p>
|
||||
</article>
|
||||
|
||||
|
||||
@@ -329,7 +329,7 @@
|
||||
</p>
|
||||
<p class="filename">lese-checkliste.md · material-2026-11-01</p>
|
||||
</div>
|
||||
<a class="btn btn--primary" href="/downloads/ki-hinterm-vorhang/lese-checkliste.md" download>Markdown herunterladen</a>
|
||||
<a class="btn btn--primary" href="/downloads/ki-hinterm-vorhang/lese-checkliste.md" download="lese-checkliste.md">Markdown herunterladen</a>
|
||||
</article>
|
||||
|
||||
<article class="download-card">
|
||||
@@ -341,7 +341,7 @@
|
||||
</p>
|
||||
<p class="filename">denk-checkliste.md · material-2026-11-01</p>
|
||||
</div>
|
||||
<a class="btn btn--primary" href="/downloads/ki-hinterm-vorhang/denk-checkliste.md" download>Markdown herunterladen</a>
|
||||
<a class="btn btn--primary" href="/downloads/ki-hinterm-vorhang/denk-checkliste.md" download="denk-checkliste.md">Markdown herunterladen</a>
|
||||
</article>
|
||||
|
||||
<article class="download-card">
|
||||
@@ -353,7 +353,7 @@
|
||||
</p>
|
||||
<p class="filename">ampel-matrix.md · material-2026-11-01</p>
|
||||
</div>
|
||||
<a class="btn btn--primary" href="/downloads/ki-hinterm-vorhang/ampel-matrix.md" download>Markdown herunterladen</a>
|
||||
<a class="btn btn--primary" href="/downloads/ki-hinterm-vorhang/ampel-matrix.md" download="ampel-matrix.md">Markdown herunterladen</a>
|
||||
</article>
|
||||
|
||||
<article class="download-card">
|
||||
@@ -365,7 +365,7 @@
|
||||
</p>
|
||||
<p class="filename">kernbegriffe.md · material-2026-11-01</p>
|
||||
</div>
|
||||
<a class="btn btn--primary" href="/downloads/ki-hinterm-vorhang/kernbegriffe.md" download>Markdown herunterladen</a>
|
||||
<a class="btn btn--primary" href="/downloads/ki-hinterm-vorhang/kernbegriffe.md" download="kernbegriffe.md">Markdown herunterladen</a>
|
||||
</article>
|
||||
</div>
|
||||
|
||||
|
||||
@@ -77,7 +77,7 @@
|
||||
SHA256: 6c3cab433b713a01ccf87bcf7e3fab615b56d04d6cec7f50557678ba773011cc
|
||||
</p>
|
||||
</div>
|
||||
<a class="btn btn--primary" href="/downloads/ki-hinterm-vorhang/lese-checkliste.md" download>Markdown herunterladen</a>
|
||||
<a class="btn btn--primary" href="/downloads/ki-hinterm-vorhang/lese-checkliste.md" download="lese-checkliste.md">Markdown herunterladen</a>
|
||||
</article>
|
||||
|
||||
<article class="download-card">
|
||||
@@ -92,7 +92,7 @@
|
||||
SHA256: ca4deb96ba5ab4a46dfdf10891a2674ded04ca3ca51dcc5d3e7dd8fad64cfbd3
|
||||
</p>
|
||||
</div>
|
||||
<a class="btn btn--primary" href="/downloads/ki-hinterm-vorhang/denk-checkliste.md" download>Markdown herunterladen</a>
|
||||
<a class="btn btn--primary" href="/downloads/ki-hinterm-vorhang/denk-checkliste.md" download="denk-checkliste.md">Markdown herunterladen</a>
|
||||
</article>
|
||||
|
||||
<article class="download-card">
|
||||
@@ -109,7 +109,7 @@
|
||||
SHA256: c4fe1b854ee5dc740373079923a0331b0b03aab09c4b49f1edcf0c36ad1ec02a
|
||||
</p>
|
||||
</div>
|
||||
<a class="btn btn--primary" href="/downloads/ki-hinterm-vorhang/ampel-matrix.md" download>Markdown herunterladen</a>
|
||||
<a class="btn btn--primary" href="/downloads/ki-hinterm-vorhang/ampel-matrix.md" download="ampel-matrix.md">Markdown herunterladen</a>
|
||||
</article>
|
||||
|
||||
<article class="download-card">
|
||||
@@ -124,7 +124,7 @@
|
||||
SHA256: 2e2e427ab9ce8fb683ab8124ba358399d3d01b8d48b87d878faa92ebd4b8e882
|
||||
</p>
|
||||
</div>
|
||||
<a class="btn btn--primary" href="/downloads/ki-hinterm-vorhang/kernbegriffe.md" download>Markdown herunterladen</a>
|
||||
<a class="btn btn--primary" href="/downloads/ki-hinterm-vorhang/kernbegriffe.md" download="kernbegriffe.md">Markdown herunterladen</a>
|
||||
</article>
|
||||
|
||||
<article class="download-card">
|
||||
|
||||
@@ -66,7 +66,7 @@
|
||||
<p>
|
||||
<strong>Buch:</strong> Kap. 1 ·
|
||||
<strong>Material:</strong>
|
||||
<a href="/downloads/was-bleibt-vom-menschen/drei-fragen.md" download><code>drei-fragen.md</code></a>
|
||||
<a href="/downloads/was-bleibt-vom-menschen/drei-fragen.md" download="drei-fragen.md"><code>drei-fragen.md</code></a>
|
||||
</p>
|
||||
</article>
|
||||
|
||||
@@ -138,7 +138,7 @@
|
||||
<p>
|
||||
<strong>Buch:</strong> Kap. 10 ·
|
||||
<strong>Material:</strong>
|
||||
<a href="/downloads/was-bleibt-vom-menschen/pruefbedingungen.md" download><code>pruefbedingungen.md</code></a>
|
||||
<a href="/downloads/was-bleibt-vom-menschen/pruefbedingungen.md" download="pruefbedingungen.md"><code>pruefbedingungen.md</code></a>
|
||||
</p>
|
||||
</article>
|
||||
|
||||
@@ -192,7 +192,7 @@
|
||||
<p>
|
||||
<strong>Buch:</strong> Kap. 26, Epilog ·
|
||||
<strong>Material:</strong>
|
||||
<a href="/downloads/was-bleibt-vom-menschen/sechs-hebel.md" download><code>sechs-hebel.md</code></a>
|
||||
<a href="/downloads/was-bleibt-vom-menschen/sechs-hebel.md" download="sechs-hebel.md"><code>sechs-hebel.md</code></a>
|
||||
</p>
|
||||
</article>
|
||||
|
||||
|
||||
@@ -183,7 +183,7 @@
|
||||
</p>
|
||||
<p class="filename">drei-fragen.md · material-2026-10-31</p>
|
||||
</div>
|
||||
<a class="btn btn--primary" href="/downloads/was-bleibt-vom-menschen/drei-fragen.md" download>Markdown herunterladen</a>
|
||||
<a class="btn btn--primary" href="/downloads/was-bleibt-vom-menschen/drei-fragen.md" download="drei-fragen.md">Markdown herunterladen</a>
|
||||
</article>
|
||||
|
||||
<article class="download-card">
|
||||
@@ -195,7 +195,7 @@
|
||||
</p>
|
||||
<p class="filename">pruefbedingungen.md · material-2026-10-31</p>
|
||||
</div>
|
||||
<a class="btn btn--primary" href="/downloads/was-bleibt-vom-menschen/pruefbedingungen.md" download>Markdown herunterladen</a>
|
||||
<a class="btn btn--primary" href="/downloads/was-bleibt-vom-menschen/pruefbedingungen.md" download="pruefbedingungen.md">Markdown herunterladen</a>
|
||||
</article>
|
||||
|
||||
<article class="download-card">
|
||||
@@ -207,7 +207,7 @@
|
||||
</p>
|
||||
<p class="filename">sechs-hebel.md · material-2026-10-31</p>
|
||||
</div>
|
||||
<a class="btn btn--primary" href="/downloads/was-bleibt-vom-menschen/sechs-hebel.md" download>Markdown herunterladen</a>
|
||||
<a class="btn btn--primary" href="/downloads/was-bleibt-vom-menschen/sechs-hebel.md" download="sechs-hebel.md">Markdown herunterladen</a>
|
||||
</article>
|
||||
|
||||
<article class="download-card">
|
||||
@@ -219,7 +219,7 @@
|
||||
</p>
|
||||
<p class="filename">kernbegriffe.md · material-2026-10-31</p>
|
||||
</div>
|
||||
<a class="btn btn--primary" href="/downloads/was-bleibt-vom-menschen/kernbegriffe.md" download>Markdown herunterladen</a>
|
||||
<a class="btn btn--primary" href="/downloads/was-bleibt-vom-menschen/kernbegriffe.md" download="kernbegriffe.md">Markdown herunterladen</a>
|
||||
</article>
|
||||
</div>
|
||||
|
||||
|
||||
@@ -77,7 +77,7 @@
|
||||
SHA256: ed16a0ed6f53fd84572ab7619797cb5affa105d8c2269c026deb1bccaf9a6b3b
|
||||
</p>
|
||||
</div>
|
||||
<a class="btn btn--primary" href="/downloads/was-bleibt-vom-menschen/drei-fragen.md" download>Markdown herunterladen</a>
|
||||
<a class="btn btn--primary" href="/downloads/was-bleibt-vom-menschen/drei-fragen.md" download="drei-fragen.md">Markdown herunterladen</a>
|
||||
</article>
|
||||
|
||||
<article class="download-card">
|
||||
@@ -92,7 +92,7 @@
|
||||
SHA256: 0ad91b9a4fa80e93bedfaf847f2567fc6df59c96873db05723a74912b33362b0
|
||||
</p>
|
||||
</div>
|
||||
<a class="btn btn--primary" href="/downloads/was-bleibt-vom-menschen/pruefbedingungen.md" download>Markdown herunterladen</a>
|
||||
<a class="btn btn--primary" href="/downloads/was-bleibt-vom-menschen/pruefbedingungen.md" download="pruefbedingungen.md">Markdown herunterladen</a>
|
||||
</article>
|
||||
|
||||
<article class="download-card">
|
||||
@@ -107,7 +107,7 @@
|
||||
SHA256: f42d130853675ef20646a92c1ced630d76d6d5b0b7ae2565f0fc25511ca6d42f
|
||||
</p>
|
||||
</div>
|
||||
<a class="btn btn--primary" href="/downloads/was-bleibt-vom-menschen/sechs-hebel.md" download>Markdown herunterladen</a>
|
||||
<a class="btn btn--primary" href="/downloads/was-bleibt-vom-menschen/sechs-hebel.md" download="sechs-hebel.md">Markdown herunterladen</a>
|
||||
</article>
|
||||
|
||||
<article class="download-card">
|
||||
@@ -122,7 +122,7 @@
|
||||
SHA256: f426ead8d999f219b0a2c1289a847625164c3bad9d6a18d4024c27feabf7bec3
|
||||
</p>
|
||||
</div>
|
||||
<a class="btn btn--primary" href="/downloads/was-bleibt-vom-menschen/kernbegriffe.md" download>Markdown herunterladen</a>
|
||||
<a class="btn btn--primary" href="/downloads/was-bleibt-vom-menschen/kernbegriffe.md" download="kernbegriffe.md">Markdown herunterladen</a>
|
||||
</article>
|
||||
|
||||
<article class="download-card">
|
||||
|
||||
Reference in new issue
Block a user