Start · Devlog

Tag 1 · Montag, 18. Mai 2026

Montag, 2026-05-18 — Tag 1

web

Spieler-Sicht

Tag eins von Comicello — und gleich ein voller. Aus einem kurzen Text wird hier ein Comic mit dir als Hauptfigur: Tagebuch-Notiz rein, ein paar Panels raus. Heute ist das Fundament dafür entstanden.

Was du heute zum ersten Mal kannst:

  • Comics anlegen und ihre Panels speichern lassen, statt sie nach dem Erzeugen wieder zu verlieren.
  • Dich selbst als Figur einsetzen: Beim Erstellen kannst du Referenzbilder von dir auswählen, damit du in jedem Panel wiedererkennbar bleibst — einmal eine Figur bauen, danach immer wieder verwenden.
  • Eigene Bilder hochladen, die als Vorlage für deine Comic-Figur dienen.
  • Stöbern und teilen: Es gibt einen ersten Marktplatz, auf dem veröffentlichte Comics auftauchen, mit Autor:innen-Profil, Sternen und Folgen-Funktion sowie Suche und Stil-Filter.
  • Comicello als App installieren — die Web-App lässt sich aufs Startgerät legen und funktioniert wie eine eigenständige App.

Login läuft über dein bestehendes mana-Konto. Noch ganz frisch und in Bewegung, aber der Grundstein steht.

Macher-Sicht

Greenfield-Tag. Comicello wird aus dem comic-Modul von managarten zu einem eigenständigen Server-first-Repo geliftet, nach dem Herbatrium-Pattern. In einem Rutsch ging es von leerem Skelett bis weit in die geplanten Phasen — die ω-Phasenmarker in den Commit-Subjects sind nicht streng sequenziell, sondern wurden an dem Tag parallel abgearbeitet.

Was entstand, der Reihe nach:

  • Initial Scaffold (ω-0) — Hono+Bun-API auf 3109, SvelteKit-Web auf 3110, Postgres auf 5452, drei Tabellen im pgSchema('comicello') (comic_stories, comic_characters, comic_panels). Direkt danach ein Port-Renumber 3107/3108/5451 → 3109/3110/5452, um mit mana/docs/PORTS.md konform zu bleiben.
  • Panel-Plan-Persistierung + Render (ω-1) — der Storyboard-Aufruf (mana-llm, Text → JSON-Panel-Plan) wird gespeichert, Panels werden über mana-image-edits gerendert. Comicello hält nur die mana-media-IDs, die Pixel liegen in mana-media.
  • Identity-Refs-Picker im /comics/newcharacterMediaIds[] als Identity-Anchor, damit die Figur über Panels konsistent bleibt.
  • /api/v1/me-images/upload — Multipart-Upload → mana-media → mana-me als Vorarbeit für native Clients (ω-N-Serie).
  • Feature-Complete Webapp + Character-Variant-Render — der größte Einzel-Commit (+1457), zieht die Views aus managarten nach.
  • Cross-Module-Hooks (ω-2) über /share/receive + URL-Prefill — Stories aus Journal/Notiz/Calendar via sourceInput-Backref.
  • AASA-Endpoint + device_tokens-Tabelle mit APN-Hook im renderPanel-Success — Vorarbeit für comicello-native (Push, wenn ein Panel fertig gerendert ist).
  • Marketplace (ω-1-marketplace) — der zweite große Block: Schema- Lift, Browse, Publish, ein dormantes Bezahl-System (gebaut, aber schlafend), UGC-Moderation, dann Web-Browse + Author-Profil + Publish-Toggle. Nachgeschoben: credits-client-Fix (camelCase + referenceId), Stars + Author-Follows, Search + Style-Filter + Loading-Skeleton, Author-Filter (author=<slug>) und mana-events-Pub/Sub für den Publish-Lifecycle (Föderation).
  • Plattform-Adoptionen: PWA-Setup über @mana/shared-pwa (Adoption #4, +3548 — bringt das Service-Worker-/Manifest-Gewicht) und Auth-Session über @mana/shared-auth-sso.

Trade-offs: Bezahl-System bewusst dormant gestartet — Schema und UI da, aber nicht scharf, um Marktplatz-Browse ohne Monetarisierungs- Druck live zu bringen. Identity-Anchor über Media-IDs statt eingebrannter Prompts, damit Figuren wiederverwendbar bleiben.

Stats

19
Commits
+17478/-530
Zeilen
96
Files
2.8 h
Aktiv
Erster Commit
10:27 (Montag)
Letzter Commit
23:24
Spannweite
12.9 Stunden
Aktiv (ohne Pausen > 30min)
2.8 Stunden
Pausen
5
Längster Fokus
1.2 Stunden

Wo wurde gearbeitet

  • 18% apps/api/src/routes
  • 18% apps/web/src/routes
  • 10% apps/api/src/db
  • 7% apps/web/src/lib
  • 5% apps/api/src/index.ts

Commits (19)

Volle Liste aufklappen
  • 967a172 Initial scaffold — Phase ω-0
  • c64d937 Port-Renumber 3107/3108/5451 → 3109/3110/5452
  • 2d87b44 Phase ω-1 Start: Panel-Plan-Persistierung + Render via mana-image-edits
  • 332a633 Phase ω-1.5: Identity-Refs-Picker im /comics/new
  • 0238a77 Phase ω-1.5: Identity-Refs-Picker + Phase ω-3 LIVE-Deploy auf mana-server
  • 1110cd4 ω-N-4 Web-Vor-Arbeit: /api/v1/me-images/upload (multipart → mana-media → mana-me)
  • f64d283 ω-1: Feature-Complete Webapp + Character-Variant-Render
  • 42aa944 ω-2: Cross-Module-Hooks via /share/receive + URL-Prefill
  • 8763b57 ω-N-5 Web-Vor-Arbeit: AASA-Endpoint für comicello-native
  • d6d6369 ω-N-6c: device_tokens-Tabelle + APN-Hook in renderPanel-Success
  • d2cdf29 ω-1-marketplace: Schema-Lift + Browse + Publish + Bezahl-System (dormant) + UGC-Moderation
  • c6499d3 ω-1-marketplace-web: Browse + Author-Profil + Publish-Toggle
  • f4dd0cc ω-1-marketplace-fix: credits-client camelCase + referenceId
  • 6d67772 ω-1-marketplace-engagement: Stars + Author-Follows
  • 30476c3 ω-1-marketplace-polish: Search + Style-Filter + Loading-Skeleton
  • 313e3a7 feat(web): PWA-Setup über @mana/shared-pwa (Adoption #4)
  • 6d2ec18 ω-1-marketplace-author-filter: Browse nach author=<slug>
  • 69286e7 ω-1-marketplace-federation: mana-events Pub/Sub für Publish-Lifecycle
  • dc013ca feat(web): Auth-Session über @mana/shared-auth-sso
Geschrieben mit Claude — Hand veredelt