Website der Brass-Combo Wonderbrass https://wonderbrass.github.io/wonderbrass-blechsound.de/
  • SCSS 45.2%
  • HTML 38.6%
  • Ruby 16.2%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
2026-11-01 03:17:26 +00:00
.forgejo/workflows ci: nicht unterstütztes permissions-Feld aus Release entfernen [skip ci] 2026-10-31 12:13:03 +01:00
.github/workflows ci: GitHub-Release-Workflow entfernen, Releases laufen jetzt in Forgejo [skip ci] 2026-10-31 12:07:41 +01:00
_data Bandmitglieder-Fotos ergänzen 2026-08-23 09:21:14 +02:00
_includes Inhaber im Footer über Adresse ergänzen 2026-08-23 11:37:37 +02:00
_layouts Home-Link vom Hero-Schriftzug entfernen 2026-08-21 08:00:36 +02:00
_plugins Font Awesome als Ruby-Gem statt manuell vendort einbinden 2026-08-21 00:04:02 +02:00
_sass Social-Media-Buttons auch im Desktop-Layout vergrößern 2026-08-22 11:11:35 +02:00
assets Schriftzug als Kurve gerendert, Termin-Button angepasst 2026-09-05 20:18:33 +02:00
script Sponsoren-Seite, vergangene Termine und Redesign von Navigation/Layout 2026-08-19 16:12:33 +02:00
.env.example Termine-Dateien aus Git entfernen und korrekt ignorieren 2026-08-22 10:48:38 +02:00
.gitignore Termine-Dateien aus Git entfernen und korrekt ignorieren 2026-08-22 10:48:38 +02:00
.heartbeat chore: monthly heartbeat [skip ci] 2026-11-01 03:17:26 +00:00
_config.yml Theme-Color zurück auf Gold – Android-Darstellung passt so besser 2026-08-23 12:02:05 +02:00
CLAUDE.md Eigene Domain wonderbrass-blechsound.de per CNAME einrichten 2026-08-23 09:40:32 +02:00
CNAME Eigene Domain wonderbrass-blechsound.de per CNAME einrichten 2026-08-23 09:40:32 +02:00
Gemfile Font Awesome als Ruby-Gem statt manuell vendort einbinden 2026-08-21 00:04:02 +02:00
Gemfile.lock Font Awesome als Ruby-Gem statt manuell vendort einbinden 2026-08-21 00:04:02 +02:00
impressum.html Abstand zwischen Kontaktkarten und Haftungstexten im Impressum ergänzen 2026-08-22 11:05:18 +02:00
index.html Schriftzug als Kurve gerendert, Termin-Button angepasst 2026-09-05 20:18:33 +02:00
LICENSE Update copyright holder name in LICENSE file 2026-08-22 12:27:15 +02:00
README.md Navbar in Gold, Bootstrap-JS für Collapse-Toggler zurückbringen 2026-08-21 07:23:21 +02:00
site.webmanifest Fehlerbehebung site.webmanifest 2026-08-23 12:43:42 +02:00
sponsoren.html Navigation entfernen, Design vereinheitlichen und Assets aufräumen 2026-08-19 17:37:34 +02:00
termine.html Navigation entfernen, Design vereinheitlichen und Assets aufräumen 2026-08-19 17:37:34 +02:00
ueber-uns.html Claude.md generiert, Text angepasst 2026-08-20 23:46:00 +02:00

Wonderbrass – Website

Build & Deploy nach GitHub Pages

Quellcode der offiziellen Website von Wonderbrass – Blechbläser-Combo mit Terminen, Bandmitgliedern, Sponsoren und Impressum.

Tech-Stack

  • Jekyll 4.3 (Ruby, statischer Seitengenerator)
  • Bootstrap 5 und Font Awesome 6 (Icons) als Ruby-Gems eingebunden (siehe _plugins/), keine vendorten CSS-Dateien und kein CDN-Aufruf zu Drittanbietern
  • Bootstraps JS-Bundle (assets/js/vendor/bootstrap.bundle.min.js, manuell vendort passend zur Gem-Version) nur für die Collapse-Funktion des mobilen Navigations-Togglers – sonst kein eigenes JavaScript

Farben

Rolle Hex Verwendung
Primär #B0892D Buttons, Akzente, Überschriften-Linie
Sekundär #252525 Fließtext, Navigation, Footer
Tertiär #C4C4C4 Trennlinien, dezente Flächen

Definiert in _sass/_variables.scss – dort auch die Bootstrap-Farb-Map ($theme-colors), damit z. B. btn-primary automatisch in Gold erscheint.

Lokale Entwicklung

Voraussetzung: Ruby >= 3.1 und Bundler.

bundle install             # Gems installieren
bundle exec jekyll serve   # Dev-Server mit Live-Rebuild unter http://127.0.0.1:4000/wonderbrass-blechsound.de/
bundle exec jekyll build   # Statische Seite nach _site/ bauen

Es gibt keine Tests oder Linter in diesem Repo.

Struktur

  • index.html, ueber-uns.html, termine.html, sponsoren.html, impressum.html – die Seiten der Website
  • _layouts/, _includes/ – gemeinsames Seitengerüst (Header, Footer, Sponsor-Karte)
  • _data/ – listenartiger Inhalt (Bandmitglieder, Anlässe, Sponsoren, Termine), wird per {% for %}-Schleife eingebunden
  • _sass/, assets/css/main.scss – Styling (Bootstrap + eigene Anpassungen)
  • _config.yml – Site-Einstellungen inkl. Bandkontakt (contact.*) und Theme-Color
  • script/fetch_termine.rb – holt die Konzerttermine von der Konzertmeister-API (siehe unten)

Mehr Architektur-Details (inkl. einiger nicht offensichtlicher Stolperfallen) stehen in CLAUDE.md.

Konzertmeister-API (Termine)

Die Termine werden nicht manuell gepflegt, sondern bei jedem Build von Konzertmeister über script/fetch_termine.rb abgerufen. Übernommen werden nur Termine vom Typ Performance, mit Status aktiv und die von der Band explizit für die öffentliche Website freigegeben wurden (publicsite: true in Konzertmeister). Das Script schreibt zwei Dateien:

  • _data/termine.yml – alle kommenden Termine.
  • _data/termine_vergangen.yml – bereits stattgefundene Termine des laufenden Kalenderjahres (ab 1. Januar), neueste zuerst.

API-Key erstellen: In der Konzertmeister-Web-App unter den Organisationseinstellungen einen API-Key für die M2M-Schnittstelle anlegen.

API-Key sicher hinterlegen: Ein Konzertmeister-API-Key darf niemals im Repository landen (GitHub Pages ist immer öffentlich erreichbar, egal ob das Repo privat oder öffentlich ist). Stattdessen als verschlüsseltes Repository-Secret hinterlegen:

Settings → Secrets and variables → Actions → New repository secret → Name KONZERTMEISTER_API_KEY, Wert der API-Key.

Der Workflow (.github/workflows/pages.yml) reicht das Secret nur während des Build-Jobs als Umgebungsvariable an das Fetch-Script durch – der Key landet nie im ausgelieferten _site-Verzeichnis und ist für Website-Besucher:innen nicht einsehbar.

Lokal mit echten Daten arbeiten (optional): Key nur für den einen Aufruf als Umgebungsvariable setzen, nicht dauerhaft exportieren:

KONZERTMEISTER_API_KEY="dein-key" bundle exec ruby script/fetch_termine.rb

Ohne gesetzten Key bleiben die zuletzt im Repo vorhandenen _data/termine*.yml unverändert – lokales Entwickeln funktioniert also auch ohne Key.

Deployment

Die Website liegt auf GitHub Pages als Projektseite unter https://wonderbrass.github.io/wonderbrass-blechsound.de/ (kein eigenes Domain-Setup).

Workflow: Alle Änderungen laufen über den develop-Branch. Sobald develop nach main gemerged/gepusht wird, laufen automatisch zwei GitHub-Actions-Workflows:

  • .github/workflows/pages.yml baut die Seite und deployed sie auf GitHub Pages. GitHub Pages' eigener Safe-Mode-Build erlaubt keine zusätzlichen Gems wie bootstrap/font-awesome-sass oder eigene _plugins – deshalb baut der Workflow die Seite selbst per bundle exec jekyll build. Er läuft zusätzlich täglich per schedule, damit neue/geänderte Konzertmeister-Termine auch ohne Code-Änderung erscheinen.
  • .github/workflows/release.yml erstellt automatisch ein neues Release nach dem Schema YYYY.MM.VERSION (z. B. 2026.08.1).

Einmalig im Repository einrichten: Settings → Pages → Build and deployment → Source auf „GitHub Actions" stellen.