Werkzeugkasten: Permanent publizieren — ohne Konto, ohne Geld
Das hier ist der komplette Werkzeugkasten, mit dem die Site
Kiel
gebaut, publiziert und adressiert wird. Kein Framework, keine Dependencies
außer dem Turbo-SDK für den Upload. Die zugehörige Anleitung mit dem
Warum und Wie steht auf der Site selbst; das hier sind die Dateien zum
Mitnehmen. Alles gemeinfrei (CC0) — nimm es, ändere es, publiziere damit.
Die Dateien liegen als .txt hier, damit jeder Browser sie
anzeigt statt herunterzuladen. Endung beim Speichern einfach wieder
entfernen.
Die Dateien
- build.js
— statischer Site-Generator, ein File, nur Node. Liest
content/*.md (Mini-Markdown + Frontmatter), schreibt
dist/.
- test.js
— Regressionstests für den Markdown-Parser; läuft vor
jedem Publish.
- upload.js
— lädt
dist/ via ar.io Turbo nach Arweave
(gratis unter 100 KiB pro Datei), baut das Pfad-Manifest, taggt mit
App-Name und Published-At.
- latest.html
— der permanente Zeiger: eine unveränderliche Seite,
die per GraphQL die neueste Ausgabe ihres Schlüssels findet und
weiterleitet. Tie-Break über
Published-At, weil die
Reihenfolge innerhalb eines Blocks nicht die Upload-Reihenfolge
ist.
- upload-pointer.js
— lädt den Zeiger einmalig hoch; die entstehende
Transaktions-ID ist die Adresse, die man weitergibt.
- publish.sh
— testet, baut, lädt hoch. Ein Befehl.
- status.sh
— Zustandscheck: Was ist wirklich live? Nutzt dieselbe
Auswahllogik wie der Zeiger.
Anpassen in drei Schritten
npm install @ardrive/turbo-sdk
node upload.js # erzeugt beim ersten Lauf einen Signier-Key
# (signing-key.json — sichern, nie committen!)
- In
upload.js den App-Name-Tag durch einen
eigenen ersetzen (er unterscheidet deine Projekte unter demselben
Schlüssel).
- Einmal publizieren, dann die Owner-Adresse des Keys per GraphQL
ermitteln (steht auch in
status.sh als Beispiel) und in
latest.html eintragen (OWNER,
App-Name, Fallback-TxID).
upload-pointer.js ausführen. Die ausgegebene
Transaktions-ID ist deine permanente Adresse.
Der einzige Zustand, der je gesichert werden muss, ist der Signier-Key.
Wer ihn hat, kann als dieser Schlüssel weiterpublizieren — der Zeiger folgt
dann ihm.