Was macht papermorph?
Papermorph erstellt drei Stufen von Büchern auf einer Engine:
- Lektionen, aus einem Lehrbuch-PDF: jedes Kapitel ist ein kurzer animierter Erklärfilm, bei dem das Bild die Erklärung trägt, der Sprecher sie sagt und kurze Checks und Übungen innerhalb des Bildes stattfinden.
- Bilderbücher, aus einer Geschichte, einem Witz oder einem Märchen: kurze Filme mit Papierpuppen vor Kulissen, gezeichnet in Code oder gemalt von einem Bildmodell, mit Stimmen, Effekten und Musik.
- Filme, aus einem Buch, einer Idee oder dem Argument des Benutzers: erzählte Dokumentationen aus gefundenen gemeinfreien Bildern, Wörtern und Karten, die sich im Takt mit der Stimme bewegen, und hochformatige Kurzfilme für einen Telefon-Feed, die in unter drei Minuten einen Punkt vermitteln.
Alle sind eine SVG-Bühne (1600×900 oder 900×1600 für einen Kurzfilm) plus ein Player; Beats paaren Erzählclips mit zeitgesteuerten Aktionen. Gut bedeutet lebendig (Dinge handeln und verändern sich mit Gewicht und Timing), komponiert (jeder Moment liest sich wie ein Bild, Text neben dem, was er benennt), wahr (Bewegung, Beschriftungen und Zahlen stimmen in jedem Moment überein) und flüssig (es läuft ohne Ruckeln, auch in Firefox).
Wie das Bild aussehen soll, hängt vom Buch und vom Benutzer ab, daher beginnt die Arbeit mit einem Gespräch, das in style.json endet: die Worte des Benutzers, die von ihm gewählte Optik, die Stimmen, welches Modell welchen Schritt macht, und später die genehmigten Kapitel. Jedes Kapitel wird dagegen erstellt; wie jeder Beat angelegt und choreografiert ist, liegt in Ihrem Ermessen, gemessen an style.json und den genehmigten Kapiteln. Benutzerwünsche überschreiben Voreinstellungen. Erstellen Sie Erklärungen, Beispiele und Zeichnungen neu; halten Sie Quell-PDFs, Seitenbilder und extrahierten Text außerhalb des statischen Ausgabeordners und außerhalb der Versionskontrolle (.gitignore: *.pdf, books/*/pages/). Ein vom Skill erstelltes Kapitel ist ein erster Entwurf: Überprüfungsrunden und die Ansicht des Benutzers erfolgen vor der Veröffentlichung.
Welche Stufe
Lesen Sie die erste Datei der Stufe, dann nur das, was der aktuelle Schritt benötigt. Jede unten stehende Datei ist von hier aus verlinkt; keine andere wird benötigt, um sie zu finden.
| Der Benutzer bringt mit | Stufe | Beginnen Sie mit | Dann, wie der Schritt es erfordert |
|---|---|---|---|
| Ein Lehrbuch-PDF (auch ein Kursbuch) | Lektionen | lessons.md | intake.md · authoring.md · diagrams.md (Stufe 1) · scenes.md (Stufe 2) · assets.md · maths.md (math.js, Mathe-Teile, LaTeX) · questions.md · figures.md (vom Leser bewegte Figuren) · checks.md · cover.md · courses.md (Zitate, Aufgabenpool, SCORM: nur wenn das Buch sie erfordert) |
| Eine Geschichte, ein Witz, ein Märchen oder das PDF eines Geschichtenbuchs (seine eigenen gescannten Bilder: stories.md) | Bilderbücher | stories.md | puppets.md · painting.md (eine gemalte Optik) · listen-and-find.md (ein Suchspiel für Kleinkinder) |
| Ein Buch, eine Idee oder ein Geschichtsabschnitt, der als erzählter Film erklärt werden soll | Filme: Dokumentation | films.md | documentary.md |
| Ein Punkt, der in unter drei Minuten vermittelt werden soll, hochformatig, für einen Telefon-Feed (YouTube Shorts, TikTok, Reels), oder ein langer Film zum Neuschnitt | Filme: Kurzfilme | films.md | shorts.md |
| Das Material eines Films oder eine Idee, die hauptsächlich aus Karten und Zahlen besteht, die der Leser in seinem eigenen Tempo auf einer Seite lesen soll, deren Bild sich beim Scrollen ändert (eine Scroll-Geschichte) | Filme: Scroll-Seite | films.md | scroll.md |
| Ein Geschichtsabschnitt, der auf einer Karte Jahr für Jahr erkundet werden soll: Grenzen, die sich ändern, Menschen, die sich bewegen (eine Seite, eigener Player, nicht die Engine) | Seiten zum Erkunden | explore.md |
Jede Stufe teilt den Kern:
| Datei | Was sie enthält |
|---|---|
| core/style.md | wie man den Benutzer fragt, die Modellschritte, die kostenpflichtigen Schritte (Schlüssel, Preise, Kassenbuch, Guthaben), style.json |
| core/publish.md | new_book.py, Sprache, Minuten, Vorschau und Auslieferung, Videoexport |
| core/sound.md | die Erzähldatei, Stimmen, Lautstärken, Effekte, Musik, Untertitel |
| core/review.md | die eigene Arbeit in Bewegung sehen, Einzelbilder, Flüssigkeit, Regierunden |
| core/team.md | Erstellen von Kapiteln mit Unteragenten, dem Koordinator, Arbeitern parallel |
| core/engine.md | der Player und die Zeichen-API, Timing, Kamera, Leistung, Fallstricke |
Beginnen Sie mit dem Einstieg der Stufe, wann immer books/<book>/style.json noch nicht existiert; verwenden Sie bereits gegebene Antworten und Genehmigungen erneut.
Referenzbücher
Die Referenzbücher sind der Maßstab: zu erreichende Niveaus, keine zu kopierenden Formate. Jedes ist der Ordner site/<slug>/ des Papermorph-Repositorys (https://github.com/DozenTwelve/Papermorph), bereitgestellt unter https://papermorph.diamonddoge.org/<slug>/, sodass sein Quellcode in einem Checkout gelesen oder von einer der beiden Adressen abgerufen werden kann, wenn der Skill eigenständig installiert ist. Die Stufendateien nennen die Datei in einem Buch, die sich für einen bestimmten Schritt zu öffnen lohnt.
| Stufe | Bücher (slug) |
|---|---|
| Lektionen | Stufe 1: Elementary Algebra (elementary-algebra), Math Notebook (math-notebook); Stufe 2: Science (science); ein leichtes Board mit dunkler Tinte: physics-notebook |
| Bilderbücher | The Little Horse Crosses the River (little-horse) und Little Red Riding Hood (little-red-riding-hood): alles in Code, eine Besetzung von ElevenLabs vertont, ein Hör-und-finde-Stopp, das Neueste und der Maßstab; Joke Collection (joke-collection): gemalte Kulissen, Puppen in Code, eine Serie von Episoden; Millions of Cats (millions-of-cats, Wanda Gág, 1928): die eigenen Bilder eines gescannten Buches, in Kulissen und Puppen verwandelt (nicht im Regal) |
| Dokumentationen | Madness and Civilization (madness, nach Foucault, zehn Minuten), The Pandemic (pandemic), Shooting an Elephant (shooting-an-elephant, ein Film, in dem der Leser mitspielt) |
| Kurzfilme | die Kurzfilme zu Madness and Civilization (madness-shorts; Episode 1, The Ship, ist das ausgearbeitete Beispiel), die Kurzfilme zu The Pandemic (pandemic-shorts) |
Tulip Mania (tulip-mania) ist ein Testfilm, der allein vom Skill erstellt wurde, ohne Hilfe über diese Dateien hinaus; die Dateien nennen, worauf er gestoßen ist.
Projektstruktur
bücher/<buch>/ privat: Quelle, style.json, Storyboards, Kunst, Überprüfung/ (Stufendateien listen ihre eigenen)
content/<buch>/chNN/ narration.<sprache>.json und der Stimmen-Cache
werkzeuge/<buch>/ Tests, Audio-Skripte, Belege
site/<buch>/ das statische Buch (nur dies wird ausgeliefert)
index.html Cover und Inhalte, oder eine Serienseite
lib/ die Engine (synchronisiert von engine.py), lib/book.css (die Einstellungen dieses Buches), das Kit der Stufe, die eigenen Teile des Buches
img/ die Bilder des Buches
chNN/index.html, audio/<sprache>/ ein Kapitel oder eine Episode, seine Beat-MP3s und timings.js (Filme und Bilderbücher: audio/sfx/, audio/bgm/)
SKILL bedeutet den absoluten Ordner dieses Skills; <buch> ist der Buch-Slug, <sprache> sein primärer Sprachcode. new_book.py startet ein Buch jeder Stufe (core/publish.md).
Benötigt: uv, ffmpeg/ffprobe, Edge TTS Netzwerkzugriff (oder Kokoro, lokal), github.com für engine.py, wenn der engine/-Ordner des Repositorys nicht zur Hand ist, einen OpenRouter-Schlüssel nur für die vom Benutzer gewählten kostenpflichtigen Schritte (paint.py, eleven.py, video.py; paint_openai.py benötigt einen OpenAI-Schlüssel), und Playwright-Browser (uv run --with playwright playwright install chromium firefox; wenn Playwrights Chromium nicht läuft, setzen Sie CHROME auf einen installierten Chrome, Chromium, Brave oder Edge). Vorschau: python3 SKILL/scripts/serve.py 8765 site (kein Browser-Cache).
Skripte
Alle in SKILL/scripts/; jedes gibt seine Verwendung mit --help aus, wenn es mit dem uv run --with … ausgeführt wird, das die ersten Zeilen seines Docstrings nennen (ohne seine Pakete stoppt selbst --help am Import).
| Für | Skripte |
|---|---|
| Jedes Buch | new_book.py startet einen Buchordner · serve.py Vorschau ohne Cache · engine.py synchronisiert die Engine in Bücher · tts.py Erzählung und Wortzeiten · eleven.py dasselbe von ElevenLabs (kostenpflichtig) · level.py gleiche Lautstärke · lint.py statische Prüfungen · check.py Seitenfehler, Konsolenwarnungen und Beat-Längen in Chromium und Firefox · shot.py Beat-Screenshots · strip.py Storyboard-Blätter und Bewegungsstreifen · still.py Abschnitte, in denen sich nichts bewegt · playlog.py Töne und Untertitel gegen das Bild · perf.py Firefox-Einzelbildzeiten · export.py MP4 und .srt · sfx.py synthetisierte Effekte |
| Lektionen | outline.py und split_pages.py Seitenkarte und Kapiteltext · check_blank.py leere Öffnungen · overlap.py Pfeile durch Text · sprites.py Bildverarbeitungsschritte · refs.py überprüfte Zitate · items.py Aufgabenpool · scorm.py LMS-Paket |
| Bilderbücher | mouths.py Mundformen · join.py ein Clip pro Szene · bake_sets.py Kulissenebenen · bake_puppets.py Puppen-Bitmaps · paint.py / paint_openai.py Bildmodellbilder · painted.py platziert sie im Buch · lift.py Figuren, Kulissen und Beschriftungen, die aus den eigenen Bildern eines gescannten Buches ausgeschnitten wurden · cutout.py Bildmodellbilder auf einer Schlüsselfarbe, in Puppenteile und Requisiten geschnitten |
| Seiten zum Erkunden | topo.py die TopoJSON der Karte von Natural Earth · explore.py Prüfungen, Aufnahmen, Firefox-Timing und die Erzähldatei für eine erkundbare Karte |
| Filme | commons.py gemeinfreie Bilder und Aufnahmen mit ihren Lizenzen · prep.py Druck-, Linien- und randlose Behandlungen · trace.py Zeichnungen, die sich selbst zeichnen · video.py ein Clip aus einem Standbild · frames.py ein Clip als behandelte Einzelbilder · geo.py die Daten des Karten-Kits von Natural Earth · music.py ein auf den Film zugeschnittener Titel, das Bett in den Lücken der Stimme, und die Musik, Betten und Effekte gegen jede Zeile · safe.py Wörter außerhalb des sicheren Bereichs eines hochformatigen Films |
silence.py, ledger.py (das eine Kostenkassenbuch: Datum, Kapitel, Datei, Modell, was, Kosten) und browsers.py sind Hilfsmittel, die die anderen importieren.
Kontext
- Sprechen Sie mit dem Benutzer aus dem Hauptgespräch: Aufnahme und jedes Blatt und jede Wahl des Piloten. Wenn Unteragenten verfügbar sind, werden Kapitel als Team erstellt, jeder Schritt mit dem vom Benutzer gewählten Modell, wobei das Hauptgespräch als Koordinator des Piloten dient (core/team.md sagt, was das ermöglicht); ohne sie führen Sie dieselben Schritte im aktuellen Agenten mit dateibasiertem Zustand aus.
- Verwenden Sie die Engine-API und untersuchen Sie einzelne Funktionen bei Bedarf; kopieren Sie Kit-Dateien, anstatt ihren vollständigen Quellcode als Anweisungen zu lesen.
- Halten Sie
style.jsonaktuell und kurz; Kapitelstatus, Errata und historisches Feedback bleiben inchapters.mdundchapters/chNN.md.