Behebt arm64-Builds (z.B. Apple Silicon): vorher wurde immer amd64-Hugo
gezogen und scheiterte unter QEMU. amd64-LXC bleibt unverändert (auto).
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- Artikel-Link zeigt „→ Dialog · N" wenn Wortmeldungen existieren
- Widget lädt alle 10s nach, rendert nur bei Änderung neu (kein Flackern),
pausiert im Hintergrund-Tab. Echtes Supabase-Realtime bleibt optional.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- Menü: FORUM (extern) → DIALOG → /dialog/
- /dialog/ ohne ?thread zeigt Übersicht aller begonnenen Dialoge
(GET /api/threads, Titel aus Inhaltsdateien, sortiert nach Aktivität)
- .dialog-page füllt jetzt die normale Inhaltsspalte (kein eigenes max-width/
Padding mehr) → gleiche Breite wie andere Seiten
- Threads entstehen erst mit der ersten Wortmeldung
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- single.html: eingebetteter Dialog raus, stattdessen „→ Dialog"-Link
- neue /dialog/-Seite (content/dialog.md + layouts/_default/dialog.html) mit
Thread aus ?thread=, Rücklink zum Beitrag
- dialog.js liest Thread aus data-thread ODER ?thread=
- Styling: Pill-Link am Beitragsende, zentrierte Dialog-Seite
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Der ganze Journal-Eintrag ist bereits ein <a>; ein Autor-<a> darin = ungültiges
nested-anchor → Browser bricht den Link auf, Einträge wurden höher. Autor dort
wieder als <span>. Der Autor-Link bleibt auf der Artikelseite (single.html),
wo es keinen umschließenden Link gibt.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- .byline-author/.journal-author: border-bottom entfernt; Stil nur noch auf
echten Links (a.…), dezenter Hover statt Unterstrich
- Standard-Autor (ohne .Params.author) wird über site.Params.author.email in
data/authors aufgelöst → Link greift unabhängig vom Namen, sobald Profil
gespeichert ist; sonst Fallback auf urlize(Name)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- layouts/authors/single.html rendert die Autor-Seite zentriert
- Byline in single.html + index.html verlinkt den Autornamen zu /authors/<urlize name>/
(nur wenn die Seite existiert)
- CMS-Profil-Speichern schreibt content/authors/<slug>.md (aus Name/Bio/Avatar)
+ data/authors.json und baut public neu → Seite & Links sofort live
- Autor-Seiten aus dem Inhalts-Editor ausgeblendet (über „Profil" verwaltet)
- custom.css: .author-page / -photo / -name / -bio + Byline-Link-Stil
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Uploads landen in static/images/, wurden aber erst nach Hugo-Build unter
/images/ ausgeliefert → Vorschau/Cover/Profilbild blieben leer. Jetzt serviert
der Server /images/* direkt aus static/ — sofort sichtbar.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- Admin-only Seite „Autor:innen": Nutzer anlegen/Passwort setzen/löschen via
GoTrue-Admin-API (/api/users, requireAdmin). /api/me liefert isAdmin → Nav
zeigt den Punkt nur Admins.
- Cover-Bild: Upload-Knopf + Thumbnail (Bilder im Beitrag gingen schon über den
WYSIWYG-Editor).
- Editor-Metazeile: einzeilige Felder + Dropdowns einheitlich 38px hoch.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Bisher blieb ein Beitrag mit gesetztem Entwurf-Haken beim Publizieren aus dem
Live-Build ausgeschlossen → ging nie live. Jetzt setzt Publizieren draft:false,
speichert (Haken verschwindet, Status → Veröffentlicht), dann baut es live.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- ADMIN_EMAILS (.env) = Admins, sehen/bearbeiten alles
- Autor:innen sehen nur Einträge mit ihrer Mail unter `authors:`; Ersteller wird
beim Anlegen automatisch Autor
- Kollaboration: Feld „Autor:innen" im Editor → mehrere Mails = gemeinsamer Zugriff
- API erzwingt Zugriff bei list/read/save (403 ohne Recht)
- ADMIN_EMAILS in compose + LXC-Script (fragt Admin-Mail ab)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- Sidebar-Suche, Gruppen mit Zähler, zweizeilige Einträge mit Datum
- Editor-Kopf fixiert mit Speichern/Vorschau/Publizieren + Entwurf/Veröffentlicht-Chip
- Vorschau-Pane ein-/ausblendbar
- schwarze Topbar + Newsreader-Serif + Creme + Terracotta = Site-Look
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- CMS liest/schreibt jetzt die echten content/**/*.md (gray-matter) statt DB:
alle bestehenden Beiträge, Seiten und Rubriken erscheinen und sind editierbar.
Supabase nur noch für Login.
- Admin neu: Collections-Sidebar (Beiträge/Seiten/Rubriken), an OPENBUREAU-Theme
angeglichen (Newsreader-Serif, Creme, Terracotta, dunkle Topbar).
- Alle Frontmatter-Felder inkl. Farb-Dropdown mit Farbpunkten (Palette aus
custom.css), Layout, Tags, summary, cover_image, external, toc, draft.
- Markdown-Toolbar: Fett/Kursiv/Unterstrichen/H2/H3/Link/Bild-Upload/Liste/Zitat/Code.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
custom.css überarbeitet, hugo.yaml + Layouts angepasst, Logo (static/logo/)
und static/index.html ergänzt, Content-Korrekturen in library/.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
public/ ist git-ignored und fehlt im frischen Clone — Entrypoint baut die
Hugo-Site einmal aus content/. Ausserdem: Script-Output stellt klar, dass
:8000 nur das API-Gateway ist (keine Web-UI).
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- Dark full-bleed masthead with serif wordmark and stacked nav
- Hero entry treatment: full-bleed image bg with gradient overlay
- Per-section color system (data-section) + per-post override (data-color)
- Japanese accent palette (ajisai, sakura, suna, ichigo, yuyake, sora,
kusa, kori, amagumo, yuki) — set via `color:` in front matter
- Tag pills replace hashtag-style tags; rendered as sibling of card link
to avoid invalid nested <a> elements
- Single article: clean Republik-style header, no section rubric,
tags as pills at bottom
- Cover image support (`cover_image:` in front matter):
- wide mode: full-card banner above text
- icon mode: small thumbnail right of text with colored card bg
- Library subsection header redesigned with section-colored stripe
- Dates use Swiss DD.MM.YYYY display (ISO retained in datetime attr)
- Custom Tokyo metro photo as demo cover image
- Single page: 'von {Author} · {Date}' byline directly under H1 in
mono, editorial-style. Falls back to site.Params.author.name.
- Journal listing: author appended to existing meta row.
- Bottom .time line cleaned: only renders if there's reading time
or a meaningful lastmod, to avoid an empty meta strip.
Per-page override via 'author' frontmatter field; until set,
everything is credited to the site default author.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
- Force serif on body/post/composer with broader, !important selectors
to beat Flarum default cascade
- Hero + DiscussionHero: 2px text-colored bottom rule, larger title,
italic serif subtitle for a present masthead
- Tag pill (e.g. "General") restyled: accent text on paper, sharp
corners, mono caps, weighted
- Post divider darker; first post gets a top border for symmetry
- Avatar greyscale softened (30% instead of 80%) so identity reads
without going washed-out
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Flarum's LESS parser scans the raw source for the strings '@import'
and 'data-uri' as a security check, even inside /* ... */ comments,
so the documentation comment itself was tripping the guard. Replaced
with a minimal one-liner; full instructions stay in README/chat.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Flarum's Custom Styles parser (LESS) blocks @import and data-uri for
security. Move the font loading to a <link> tag the user adds via
Flarum admin's "Custom Header" HTML field. CSS itself stays unchanged
beyond removing the import line.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Mirrors the editorial typography and color system of openbureau.ch
onto the Flarum instance (openstudio.kgva.ch). Paste into Flarum
admin → Appearance → Custom Styles. File is also served at
openbureau.ch/flarum.css once the site is deployed, so Flarum can
optionally @import the live URL instead.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
- Hugo site for openbureau.ch (Deutsch, i18n-ready for EN/IT)
- Theme themes/openbureau/ = local copy of shibui, customized via
site-level layouts and assets to keep the theme reference clean
- Editorial typography stack: Newsreader serif body, Space Grotesk
display, Inter for listings, IBM Plex Mono for technical meta
- Content structure: library/ (Theorie, Büroführung, Software) with
manifest and colophon at root; software is a library category, not
a separate top-level
- Three views over one source: Journal (chronological home),
Library (atlas grouped by section + tag cloud), single articles
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>