Webseite des Netz39 e.V.
Find a file
(ง ื▿ ื)ว Moved to codeberg 8ce97d5a54
Delete _events/2024/2024-05-03_softwerke_stammtisch.md
Stammtisch fällt diesen Monat aus, nächster dann im Juni
2024-05-02 14:01:59 +02:00
.github Cleanup and rename main action 2024-03-27 02:06:42 +01:00
_data Add Stickmaschinen-Workshop event 2024-02-05 01:16:03 +01:00
_events Delete _events/2024/2024-05-03_softwerke_stammtisch.md 2024-05-02 14:01:59 +02:00
_includes Add lazy loading to space API image 2024-04-03 19:42:45 +02:00
_layouts update event template to prepend place and time to page content 2024-03-14 23:06:18 +01:00
_plugins Merge pull request #126 from netz39/feat/events/link 2024-04-11 01:29:35 +02:00
_portfolio Initial commit 2023-10-16 01:36:59 +02:00
_posts Add Stickmaschinen-Workshop event 2024-02-05 01:16:03 +01:00
_sass Fix theme toggle button label 2023-11-09 15:36:15 +01:00
assets Add event Punktschweißen-Workshop 2024-03-05 16:08:44 +01:00
blog Only show the three newest blog entries on landing page 2023-10-25 13:32:01 +02:00
pages replace ics template 2024-03-13 23:10:20 +01:00
tools Merge branch 'patch-4' into feat-ics-plugin 2024-03-16 11:03:33 +01:00
.gitattributes migrate img and pdf files to git lfs 2023-10-23 09:14:05 +02:00
.gitignore Initial commit 2023-10-16 01:36:59 +02:00
.gitpod.yml Initial commit 2023-10-16 01:36:59 +02:00
.pre-commit-config.yaml feat: add precommit config to make removing exif data from images easier 2024-02-04 23:29:31 +01:00
_config.yml Update _config.yml 2024-03-21 00:40:40 +01:00
calendar-data.html update fullcalendar json source 2024-03-14 22:22:31 +01:00
CNAME Update CNAME 2023-10-18 21:25:26 +02:00
docker-compose.yml Add docker-compose 2023-10-16 03:36:36 +02:00
Gemfile render event content into event description as plain text 2024-03-13 23:14:55 +01:00
index.html Initial commit 2023-10-16 01:36:59 +02:00
LICENSE Initial commit 2023-10-16 01:36:59 +02:00
README.md update readme 2024-03-16 12:03:01 +01:00
type-on-strap.gemspec Pin jekyll to 4.2.2 to work with webrick 2023-10-16 03:36:21 +02:00

www.netz39.de

Warum Jekyll?

Unsere Webseite setzt aus folgenden Gründen auf Jekyll, einen statischen Website-Generator:

  • Einfache Handhabung: Jekyll ermöglicht es, Inhalte in Markdown zu schreiben, was die Erstellung und Aktualisierung von Webseiten vereinfacht.

  • Schnelle Ladezeiten: Da Jekyll statische Seiten generiert, werden die Webseiten schnell geladen.

  • GitHub Pages Integration: Jekyll wird von GitHub Pages unterstützt, was bedeutet, dass wir unsere Website direkt aus dem GitHub-Repository hosten können.

Neue Blogeinträge erstellen:

  1. Blogeintrag erstellen:

    • Erstelle eine neue Markdown-Datei im _posts-Verzeichnis unter das aktuelle Jahr. Benenne die Datei nach dem Format YYYY-MM-DD-titel-des-eintrags.md

    • Front Matter: Füge am Anfang der Datei das YAML-Front Matter hinzu. Das Front Matter enthält Metadaten für den Blogeintrag, wie z.B. den Layout-Typ, den Titel, den Autor und das Veröffentlichungsdatum. Hier ein Beispiel für das Front Matter:

      ---
      layout: post
      title: "Titel des Blogeintrags"
      author: MaxMustermann
      date: 2023-10-20
      feature-img: "assets/img/feature-img.jpg" # optional
      thumbnail: "assets/img/thumbnail-img.jpg" # optional
      ---
      
    • Schreibe den Inhalt deines Blogeintrags im Markdown-Format unterhalb des Front Matter.

    • Bilder eines Blogeintrags werden unter /assets/img/post-imgin das jeweilige Jahr abgelegt.

  2. Pull Request erstellen:

    • Erstelle einen neuen Branch, füge die Markdown-Datei hinzu und committe/pushe sie.
    • Erstelle einen Pull Request von deinem Branch zum Hauptbranch im GitHub-Repository.
    • Teammitglieder können deine Änderungen überprüfen und den Pull Request akzeptieren.

Neue Events erstellen:

  • Analog zu "Blogeintrag erstellen" wird im _events-Verzeichnis eine Markdown-Datei erstellt.
  • Das Front Matter sollte wie folgt aussehen:
    ---
    layout: event
    title: "Titel des Events"
    author: MaxMustermann # optional, soll angegeben werden, wenn du der Ansprechpartner des Events bist
    event:
      start: 2023-10-20 19:00:00 # Datum, an dem das Event stattfindet. Die Zeit ist optional
      end:   2023-10-20 21:00:00 # optional, Zeitpunkt, an dem das Event endet
      organizer: "Netz39 Team <kontakt@netz39.de>" # optional, Kontaktdaten im ical Event
      location: "Netz39 e.V." # optional, Ort des Events
    ---
    
  • Unterhalb des Front Matters die Beschreibung des Events in Markdown aufschreiben
  • Bei der Angabe der Zeiten müssen folgende Regeln eingehalten werden:
    • event.end darf nicht vor event.start liegen
    • Wenn event.end angegeben ist, dann muss event.start eine Uhrzeit enthalten
    • Wenn event.end weggelassen wird, dann wird das Ereignis auf der Homepage ganztagig und im ical Feed mit Uhrzeit angezeigt
    • Wenn keine Uhrzeit in event.start angegeben ist, dann wird das Event auch im ical Feed ganztagig angezeigt
    • Mehrtägige Events werden nur mit Angabe der Uhrzeiten korrekt dargestellt

Installation und lokale Entwicklung mit Docker:

  1. Docker und Docker Compose auf deinem System installieren

  2. Docker Container im root-Verzeichnis starten:

    docker-compose up
    

    Der Jekyll-Buildserver wird nun in einem Docker-Container gestartet und ist unter http://localhost:4000 verfügbar. Du kannst Änderungen vornehmen, und sie werden automatisch in Echtzeit aktualisiert.

  3. Nach der Entwicklung den Container mit docker-compose down beenden.

git-lfs

Dieses Repository nutzt zur Verwaltung von großen Binärdaten (Bilder und PDFs) git-lfs. Zur Installation folge bitte der Installationsanleitung für dein Betriebssystem.

Die Arbeit mit den Dateien ändert sich durch die Verwendung von git-lfs nicht.

pre-commit

Dieses Reoisitory nutzt pre-commit, um git pre-commit-hooks auszuführen.

Installation

# install package
pip install pre-commit
# install pre-commit-hooks in repo
pre-commit install
# run (new) hooks against all files in repo
pre-commit run --all-files

Genutzte hooks

Siehe .pre-commit-config.yaml

License

© Netz39 e.V