fix: Tabellen-Rendering und Prose-Styling verbessert

- remark-gfm hinzugefuegt fuer GFM-Tabellen-Support
- Tabellen-CSS: Header, Hover, Spacing, responsive overflow
- Prose H1-Styling fuer Guide-Titel aus Markdown
- Horizontale Linien, Strong-Tags, Listen in Tabellen
- Alle Guides: Tabellen werden jetzt als HTML-<table> gerendert

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Klaus Molzberger
2026-03-29 01:51:06 +01:00
parent a4ae43a07c
commit bbc7176ffc
4 changed files with 342 additions and 2 deletions

View File

@@ -2,6 +2,7 @@ import fs from "fs";
import path from "path";
import matter from "gray-matter";
import { remark } from "remark";
import remarkGfm from "remark-gfm";
import html from "remark-html";
import readingTime from "reading-time";
@@ -57,7 +58,7 @@ export const getGuideBySlug = async (slug: string): Promise<Guide | null> => {
const fileContent = fs.readFileSync(filePath, "utf-8");
const { data, content } = matter(fileContent);
const stats = readingTime(content);
const processed = await remark().use(html).process(content);
const processed = await remark().use(remarkGfm).use(html, { sanitize: false }).process(content);
return {
title: data.title ?? slug,
@@ -86,7 +87,7 @@ export const getPageContent = async (
const fileContent = fs.readFileSync(filePath, "utf-8");
const { data, content } = matter(fileContent);
const processed = await remark().use(html).process(content);
const processed = await remark().use(remarkGfm).use(html, { sanitize: false }).process(content);
return {
title: data.title ?? slug,