Website + Bewerbungs-Postfach live deployed auf Cloudflare Workers (dogfather-universe.dogfather1608.workers.dev)

This commit is contained in:
2026-07-30 21:02:39 +02:00
parent 4263564f9f
commit 81fecc7c11
10 changed files with 85 additions and 70 deletions
+6
View File
@@ -0,0 +1,6 @@
.git
.gitignore
.wrangler
cloudflare-worker
wrangler.toml
node_modules
+1
View File
@@ -4,3 +4,4 @@ Thumbs.db
node_modules/ node_modules/
cloudflare-worker/.wrangler/ cloudflare-worker/.wrangler/
cloudflare-worker/node_modules/ cloudflare-worker/node_modules/
.wrangler/
+47 -61
View File
@@ -1,92 +1,78 @@
# DOGFATHER UNIVERSE — Go-Live-Anleitung # DOGFATHER UNIVERSE — Go-Live-Anleitung
Diese Website ist rein statisch (HTML/CSS/JS) — sobald eine Domain feststeht, ist „online stellen" ## ✅ Status: bereits live
nur noch eine Frage von ein paar Klicks/Befehlen, kein Code-Umbau nötig. Diese Datei ist die
Checkliste dafür.
## 1. Domain-Platzhalter ersetzen (einmalig, sobald Domain feststeht) Die Website läuft schon — kostenlos, sofort teilbar, auf deinem eigenen Cloudflare-Account:
An folgenden Stellen steht aktuell `REPLACE-WITH-YOUR-DOMAIN.tld` als Platzhalter: - **Website:** https://dogfather-universe.dogfather1608.workers.dev
- **Bewerbungs-Postfach-Worker:** https://dogfather-universe-postfach.dogfather1608.workers.dev
- `sitemap.xml` (alle `<loc>`-Einträge) Beide laufen als Cloudflare Worker (Static Assets + API-Worker), im kostenlosen Free-Tier. Du
- `robots.txt` (Sitemap-Zeile) kannst den Link zur Website ab sofort verschicken. Sobald du eine eigene Domain hast, ist der
- in **jeder** `.html`-Datei: `og:url`, `og:image`, `twitter:image` (im `<head>`) Umzug dorthin reine Konfiguration — kein Code-Umbau, kein erneutes Deployen von Grund auf.
Am schnellsten mit Suchen-&-Ersetzen im Editor, oder per Terminal (im Ordner `DogFather-Website/`): ## Eigene Domain anschließen (sobald vorhanden)
1. Im [Cloudflare-Dashboard](https://dash.cloudflare.com) → **Workers & Pages**
`dogfather-universe` → Tab **Settings → Domains & Routes****Add** → eigene Domain eintragen.
Läuft die Domain schon über Cloudflare, ist das in der Regel sofort aktiv (automatisches HTTPS).
2. Domain-Platzhalter im Code ersetzen (nur relevant für Social-Media-Vorschaubilder, nicht für
die Funktion der Seite selbst — die läuft so oder so):
```bash ```bash
# Beispiel mit echter Domain (macOS/Linux/Git-Bash): cd DogFather-Website
find . -type f \( -name "*.html" -o -name "*.xml" -o -name "*.txt" \) \ find . -type f \( -name "*.html" -o -name "*.xml" -o -name "*.txt" \) \
-exec sed -i 's/REPLACE-WITH-YOUR-DOMAIN.tld/deine-domain.de/g' {} + -exec sed -i 's/REPLACE-WITH-YOUR-DOMAIN.tld/deine-domain.de/g' {} +
npx wrangler deploy
``` ```
3. Optional: Social-Preview-Bild `assets/img/og-cover.jpg` (1200×630px) ergänzen.
4. CORS enger fassen: in `cloudflare-worker/src/worker.js` → `corsHeaders()` die eigene Domain statt
`"*"` eintragen, dann `cd cloudflare-worker && npx wrangler deploy`.
## 2. Social-Preview-Bild ergänzen (optional, aber empfohlen) ## Änderungen künftig live schalten
`assets/img/og-cover.jpg` (1200×630px) anlegen — erscheint als Vorschaubild, wenn Links z.B. bei Jede Änderung an den Dateien im Ordner `DogFather-Website/` wird erst live, wenn erneut deployed
TikTok, WhatsApp oder Discord geteilt werden. Bis dahin zeigen Plattformen einfach kein Bild an, wird:
nichts bricht.
## 3. Bewerbungs-Postfach deployen (falls noch nicht geschehen)
Siehe `cloudflare-worker/README.md`. Danach die Worker-URL eintragen in:
- `assets/js/forms.js``API_BASE_URL`
- `postfach.html``API_BASE_URL`
## 4. Hosting wählen & deployen
Alle drei Optionen sind kostenlos im Free-Tier und unterstützen automatisch HTTPS +
Custom-Domains. Empfehlung: **Cloudflare Pages**, weil das Bewerbungs-Postfach schon auf
Cloudflare läuft — dann liegt alles in einem Account.
### Option A — Cloudflare Pages (empfohlen)
```bash ```bash
cd DogFather-Website cd DogFather-Website
npx wrangler pages deploy . --project-name=dogfather-universe npx wrangler deploy
``` ```
Danach im Cloudflare-Dashboard unter **Workers & Pages → dogfather-universe → Custom domains** Für Änderungen am Bewerbungs-Postfach-Worker selbst (`cloudflare-worker/src/worker.js`):
die eigene Domain hinzufügen (DNS läuft automatisch über Cloudflare, wenn die Domain dort
verwaltet wird).
### Option B — Netlify ```bash
cd DogFather-Website/cloudflare-worker
npx wrangler deploy
```
1. Auf [netlify.com](https://netlify.com) einloggen (kostenloser Account reicht) ## Alternative Hosting-Optionen (falls du weg von Cloudflare willst)
2. „Add new site" → „Deploy manually" → den Ordner `DogFather-Website/` per Drag&Drop hochladen
(oder Repo verbinden, falls die Seite auf GitHub liegt)
3. `netlify.toml` wird automatisch erkannt (liegt schon bereit)
4. Unter **Site settings → Domain management** die eigene Domain hinzufügen
### Option C — GitHub Pages Die Seite ist reines statisches HTML/CSS/JS und läuft überall. Configs liegen bereit:
1. Repo auf GitHub erstellen, Inhalt von `DogFather-Website/` pushen (siehe Abschnitt 5) - **Netlify:** `netlify.toml` liegt vor — Ordner `DogFather-Website/` auf netlify.com hochladen
2. Im Repo unter **Settings → Pages** → Branch `main`, Ordner `/ (root)` auswählen oder Repo verbinden.
3. Datei `.nojekyll` liegt schon bereit (verhindert, dass GitHub Dateien wie `_headers` - **GitHub Pages:** `.nojekyll` liegt vor — Repo pushen, unter **Settings → Pages** aktivieren.
fälschlich ignoriert)
4. Unter **Settings → Pages → Custom domain** die eigene Domain eintragen — GitHub legt dafür
automatisch eine `CNAME`-Datei im Repo an
## 5. Git-Repo einrichten (falls noch nicht geschehen) In beiden Fällen bleibt der Bewerbungs-Postfach-Worker unabhängig auf Cloudflare bestehen (er ist
eine reine API, kein Teil des Frontends) — `API_BASE_URL` in `assets/js/forms.js`, `index.html`
und `postfach.html` zeigt bereits dorthin.
## Git-Repo
Bereits eingerichtet (`DogFather-Website/.git`), erster Commit vorhanden. Bei Bedarf zu GitHub
pushen:
```bash ```bash
cd DogFather-Website cd DogFather-Website
git init
git add .
git commit -m "DOGFATHER UNIVERSE — erste lauffähige Version"
git branch -M main
git remote add origin <repo-url> git remote add origin <repo-url>
git push -u origin main git push -u origin main
``` ```
`.gitignore` ist bereits vorbereitet (schließt z.B. Wrangler-Cache aus). ## Nach jedem Go-Live-Schritt prüfen
## 6. Nach dem Go-Live prüfen - [ ] Website lädt: https://dogfather-universe.dogfather1608.workers.dev
- [ ] Bewerbungsformular sendet erfolgreich (im Postfach zeigt sich ein neuer Eintrag)
- [ ] Alle Seiten über die echte Domain aufrufbar (nicht nur `index.html`, auch Unterseiten) - [ ] Live-Punkt auf der Startseite reagiert auf den Toggle im Postfach
- [ ] `https://deine-domain.de/robots.txt` und `/sitemap.xml` erreichbar - [ ] Nach Domain-Wechsel: Link-Vorschau testen, z.B. mit dem
- [ ] Bewerbungsformular sendet erfolgreich (Postfach zeigt neue Einträge) [Facebook Sharing Debugger](https://developers.facebook.com/tools/debug/)
- [ ] Link-Vorschau testen, z.B. mit dem
[Facebook Sharing Debugger](https://developers.facebook.com/tools/debug/) oder
[Twitter Card Validator](https://cards-dev.twitter.com/validator)
- [ ] In `cloudflare-worker/src/worker.js``corsHeaders()` `"*"` durch die echte Domain
ersetzen und den Worker neu deployen (`wrangler deploy`)
+4
View File
@@ -0,0 +1,4 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64">
<rect width="64" height="64" rx="16" fill="#0a0c10"/>
<text x="32" y="42" font-size="34" text-anchor="middle">🩵</text>
</svg>

After

Width:  |  Height:  |  Size: 194 B

+1 -1
View File
@@ -15,7 +15,7 @@
// TODO: nach dem Deploy des Cloudflare Workers hier die Worker-URL ohne // TODO: nach dem Deploy des Cloudflare Workers hier die Worker-URL ohne
// abschließenden Slash eintragen, z.B. // abschließenden Slash eintragen, z.B.
// "https://dogfather-universe-postfach.DEIN-ACCOUNT.workers.dev" // "https://dogfather-universe-postfach.DEIN-ACCOUNT.workers.dev"
const API_BASE_URL = ""; const API_BASE_URL = "https://dogfather-universe-postfach.dogfather1608.workers.dev";
const CONTACT_EMAIL = "[email protected]"; // TODO: echte Kontakt-E-Mail eintragen const CONTACT_EMAIL = "[email protected]"; // TODO: echte Kontakt-E-Mail eintragen
+7
View File
@@ -6,6 +6,13 @@ Nur wer den richtigen Code kennt, kann sie über `postfach.html` einsehen — de
Kosten: läuft im kostenlosen Cloudflare-Tier (Workers Free + KV Free reichen für dieses Volumen locker). Kosten: läuft im kostenlosen Cloudflare-Tier (Workers Free + KV Free reichen für dieses Volumen locker).
## ✅ Bereits deployed
Läuft schon unter: https://dogfather-universe-postfach.dogfather1608.workers.dev
(Health-Check: `/health`). Die Website (`assets/js/forms.js`, `index.html`, `postfach.html`) zeigt
bereits auf diese URL — die Schritte unten sind nur nötig, falls der Worker mal neu aufgesetzt
werden muss (z.B. anderer Account, Code vergessen und Secret-Reset gewünscht).
## Voraussetzungen ## Voraussetzungen
- Ein (kostenloser) Cloudflare-Account - Ein (kostenloser) Cloudflare-Account
+1 -3
View File
@@ -7,8 +7,6 @@ name = "dogfather-universe-postfach"
main = "src/worker.js" main = "src/worker.js"
compatibility_date = "2024-01-01" compatibility_date = "2024-01-01"
# TODO: nach `wrangler kv namespace create BEWERBUNGEN` die ausgegebene
# "id" hier eintragen (ersetzt "REPLACE_ME").
[[kv_namespaces]] [[kv_namespaces]]
binding = "BEWERBUNGEN" binding = "BEWERBUNGEN"
id = "REPLACE_ME" id = "f8f8a692150f452cab5e334743194fe2"
+1 -1
View File
@@ -169,7 +169,7 @@
<script> <script>
// Gleiche Worker-URL wie in assets/js/forms.js / postfach.html eintragen, // Gleiche Worker-URL wie in assets/js/forms.js / postfach.html eintragen,
// sobald der Cloudflare Worker deployed ist. // sobald der Cloudflare Worker deployed ist.
const API_BASE_URL = ""; const API_BASE_URL = "https://dogfather-universe-postfach.dogfather1608.workers.dev";
document.addEventListener("DOMContentLoaded", () => { document.addEventListener("DOMContentLoaded", () => {
// Live-Status: grüner Punkt, wenn Dogfather gerade live ist // Live-Status: grüner Punkt, wenn Dogfather gerade live ist
+1 -1
View File
@@ -119,7 +119,7 @@
<script> <script>
// TODO: nach dem Deploy des Cloudflare Workers hier die Worker-URL ohne // TODO: nach dem Deploy des Cloudflare Workers hier die Worker-URL ohne
// abschließenden Slash eintragen (identisch zu assets/js/forms.js). // abschließenden Slash eintragen (identisch zu assets/js/forms.js).
const API_BASE_URL = ""; const API_BASE_URL = "https://dogfather-universe-postfach.dogfather1608.workers.dev";
document.addEventListener("DOMContentLoaded", () => { document.addEventListener("DOMContentLoaded", () => {
const gateContainer = document.getElementById("gate-container"); const gateContainer = document.getElementById("gate-container");
+13
View File
@@ -0,0 +1,13 @@
# =====================================================================
# DOGFATHER UNIVERSE — Website Deploy-Konfiguration (Cloudflare Workers
# Static Assets). Getrennt vom Bewerbungs-Postfach-Worker in
# cloudflare-worker/ — dieser Worker liefert NUR die statische Website
# aus, hat keinerlei Zugriff auf Bewerbungsdaten oder Secrets.
# =====================================================================
name = "dogfather-universe"
compatibility_date = "2024-01-01"
[assets]
directory = "."
not_found_handling = "404-page"