{"id":49084530,"url":"https://github.com/minecraft-gilde/website","last_synced_at":"2026-04-20T14:15:52.011Z","repository":{"id":332815562,"uuid":"1135057582","full_name":"minecraft-gilde/website","owner":"minecraft-gilde","description":"Offizielle Website der Minecraft Gilde – gebaut mit Astro","archived":false,"fork":false,"pushed_at":"2026-04-13T17:44:15.000Z","size":11590,"stargazers_count":1,"open_issues_count":11,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-04-13T19:27:00.218Z","etag":null,"topics":["astro","frontend","gaming-community","minecraft","static-site","static-site-generator","website"],"latest_commit_sha":null,"homepage":"https://minecraft-gilde.de","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/minecraft-gilde.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"docs/security-csp.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":"AGENTS.md","dco":null,"cla":null}},"created_at":"2026-01-15T15:25:02.000Z","updated_at":"2026-04-11T11:09:35.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/minecraft-gilde/website","commit_stats":null,"previous_names":["cfplusplus/astro-gilde","cfplusplus/minecraft-gilde-web","minecraft-gilde/website"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/minecraft-gilde/website","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/minecraft-gilde%2Fwebsite","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/minecraft-gilde%2Fwebsite/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/minecraft-gilde%2Fwebsite/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/minecraft-gilde%2Fwebsite/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/minecraft-gilde","download_url":"https://codeload.github.com/minecraft-gilde/website/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/minecraft-gilde%2Fwebsite/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32050576,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-20T11:35:06.609Z","status":"ssl_error","status_checked_at":"2026-04-20T11:34:48.899Z","response_time":94,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["astro","frontend","gaming-community","minecraft","static-site","static-site-generator","website"],"created_at":"2026-04-20T14:15:51.083Z","updated_at":"2026-04-20T14:15:52.006Z","avatar_url":"https://github.com/minecraft-gilde.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://minecraft-gilde.de\" target=\"_blank\" rel=\"noopener noreferrer\"\u003e\n    \u003cimg src=\"./src/assets/images/branding/logo-big.webp\" alt=\"Minecraft Gilde\" width=\"360\" /\u003e\n  \u003c/a\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://discord.minecraft-gilde.de\"\u003e\u003cimg alt=\"Discord\" src=\"https://img.shields.io/discord/1219625244906754093?label=Discord\u0026amp;logo=discord\u0026amp;logoColor=white\u0026amp;color=5865F2\" /\u003e\u003c/a\u003e\u0026nbsp;\u003c/a\u003e\u0026nbsp;\n  \u003ca href=\"https://github.com/CFPlusPlus/minecraft-gilde-web/actions/workflows/quality.yml\"\u003e\u003cimg alt=\"Build \u0026amp; Quality\" src=\"https://img.shields.io/github/actions/workflow/status/CFPlusPlus/minecraft-gilde-web/quality.yml?branch=main\u0026amp;label=Build%20%26%20Quality\" /\u003e\u003c/a\u003e\u0026nbsp;\n  \u003ca href=\"https://www.codefactor.io/repository/github/minecraft-gilde/website/overview/main\"\u003e\u003cimg alt=\"CodeFactor\" src=\"https://www.codefactor.io/repository/github/minecraft-gilde/website/badge/main\" /\u003e\u003c/a\u003e\u0026nbsp;\n\u003c/p\u003e\n\n# Minecraft Gilde Web\n\nOffizielle Website von **Minecraft-Gilde.de** (Minecraft-Server: **Minecraft Gilde**), gebaut mit **Astro**.\n\n## Tech-Stack\n\n- Astro (statische Seite)\n- TypeScript (strict)\n- Tailwind CSS\n- React (Astro Islands)\n- Vitest (Unit-Tests)\n- Node.js \u003e= 22\n\n## Schnellstart\n\n```bash\nnpm install\nnpm run dev\n```\n\nDev-Server: `http://localhost:4321`\n\n## Wichtige Befehle\n\n| Befehl                 | Zweck                                       |\n| :--------------------- | :------------------------------------------ |\n| `npm run dev`          | Lokale Entwicklung (Astro + Worker-Runtime) |\n| `npm run build`        | Produktionsbuild nach `dist/`               |\n| `npm run preview`      | Lokale Vorschau des Builds (`workerd`)      |\n| `npm run check`        | Astro Type-/Template-Check                  |\n| `npm run lint`         | ESLint                                      |\n| `npm run test`         | Unit-Tests (Vitest)                         |\n| `npm run test:e2e`     | End-to-End-Tests (Playwright)               |\n| `npm run config:check` | Konfigurations-Drift prüfen                 |\n| `npm run format:check` | Prettier-Check (CI-tauglich)                |\n\n## Wann `dev` und wann `preview`?\n\n- `npm run dev` für die tägliche Entwicklung mit schnellem Feedback.\n- `npm run preview` für den Produktions-Check nach `npm run build`.\n\n## Lokal testen (mit/ohne API)\n\n### 1) Mit lokaler API (empfohlen)\n\n```bash\ncp .dev.vars.example .dev.vars\n# .dev.vars mit DB-Daten befüllen\nnpm run dev\n```\n\n- Website und API laufen zusammen unter `http://localhost:4321`\n- Beispiel: `http://localhost:4321/api/metrics`\n- Standardmässig nutzt die lokale Entwicklung kein Hyperdrive.\n- Andere Entwickler können über `STATS_DB_*` in `.dev.vars` ihre eigene DB anbinden.\n\n### 2) Mit lokal emuliertem Hyperdrive (optional)\n\n```powershell\n$env:CLOUDFLARE_HYPERDRIVE_LOCAL_CONNECTION_STRING_HYPERDRIVE=\"mysql://\u003cuser\u003e:\u003cpass\u003e@\u003chost\u003e:3306/\u003cdb\u003e?sslMode=REQUIRED\"\nnpm run dev\n```\n\n- Damit nutzt die lokale Runtime den konfigurierten Hyperdrive-Binding.\n\n### 3) Ohne lokale API (nur Frontend)\n\n```bash\nnpm run dev\n```\n\n- Das Frontend läuft unter `http://localhost:4321`\n- `/api/*` ist technisch vorhanden, aber ohne DB-Config nicht voll nutzbar\n\n### 4) Ohne lokale API, aber mit externem API-Ziel\n\n```bash\nPUBLIC_API_ORIGIN=https://\u003cdein-api-host\u003e npm run dev\n```\n\n- Frontend nutzt dann das externe API-Ziel für `/api/*`\n- Keine Secrets im Frontend setzen (nur URL, niemals DB-Credentials)\n\n### 5) Produktionsnahe Vorschau lokal\n\n```bash\nnpm run build\nnpm run preview\n```\n\n- `astro preview` nutzt mit `@astrojs/cloudflare` ebenfalls `workerd`\n- `npm run deploy:worker` baut und deployed die produktive Cloudflare-Umgebung.\n\n## Inhalte pflegen\n\n- Befehle: `src/content/commands/list.json`\n- Regeln: `src/content/rules/main.json`\n- FAQ: `src/content/faq/main.json`\n- Tutorial: `src/content/tutorial/*.md`\n\nHinweis: In Regeln werden Abschnitte teilweise als HTML-Strings gepflegt. Inhalte sauber escapen.\n\n## Projektbereiche\n\n- `src/pages/` für Seiten\n- `src/layouts/` für Layouts\n- `src/components/` für UI-Komponenten\n- `src/features/` für Feature-Module\n- `src/scripts/` für Browser-Logik\n- `src/content/` für redaktionelle Inhalte\n- `public/` für statische Assets und Server-Dateien\n- `scripts/` für Build-Helfer\n\n## Doku unter `docs/`\n\n- [Doku-Index](./docs/index.md)\n- [Konfiguration und Umgebungsvariablen](./docs/configuration.md)\n- [Frontend-Bootstrap und Ladeverhalten](./docs/frontend-bootstrap.md)\n- [Content-Collections und Datenformate](./docs/content-collections.md)\n- [SEO, Canonical und strukturierte Daten](./docs/seo-canonical-structured-data.md)\n- [Build- und Output-Besonderheiten](./docs/build-output.md)\n- [Teststrategie (Unit und E2E)](./docs/testing.md)\n- [Projektstruktur und Frontend-Konventionen](./docs/project-structure.md)\n- [Statistik-API im Worker](./docs/stats-api.md)\n- [Live-Daten Architektur](./docs/live-data.md)\n- [Content Security Policy (CSP)](./docs/security-csp.md)\n\n## Qualität\n\nEmpfohlener lokaler Gate-Run:\n\n```bash\nnpm run format:check\nnpm run lint\nnpm run check\nnpm run test\n```\n\nBei Build-/Routing-/Asset-Änderungen zusätzlich:\n\n```bash\nnpm run build\n```\n\nCI-Workflow: `.github/workflows/quality.yml`\n\n## Deployment\n\n- `npm run build` erzeugt die statische Ausgabe in `dist/`.\n- Inhalte aus `public/` werden 1:1 nach `dist/` kopiert.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fminecraft-gilde%2Fwebsite","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fminecraft-gilde%2Fwebsite","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fminecraft-gilde%2Fwebsite/lists"}