v4 Schritt 4: News-Board

- routers/news.py: aggregiert kuratierte RSS/Atom-Feeds (HuggingFace, llama.cpp, Ollama,
  r/LocalLLaMA, Simon Willison) via httpx + stdlib xml.etree, In-memory-Cache 30 min,
  Hardware-relevante Beitraege (rocm/gfx1151/...) markiert. Degradiert pro Feed sauber.
- news.js: Beitragsliste (Quelle, Titel-Link, relatives Datum) + Aktualisieren.
- Nav 'News' + View + main.js.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
Hitonabi
2026-06-21 13:44:46 +02:00
parent 2a60def469
commit 26dac1a10b
5 changed files with 154 additions and 2 deletions
+2 -1
View File
@@ -20,7 +20,7 @@ from fastapi import FastAPI, HTTPException
from fastapi.responses import FileResponse, JSONResponse
from fastapi.staticfiles import StaticFiles
from routers import jobs, maintenance, models, system, cookbook, integration
from routers import jobs, maintenance, models, system, cookbook, integration, news
app = FastAPI(title="Mission Control")
@@ -42,6 +42,7 @@ app.include_router(maintenance.router)
app.include_router(system.router)
app.include_router(cookbook.router)
app.include_router(integration.router)
app.include_router(news.router)
_STATIC = Path(__file__).parent / "static"