www.netz39.de/README.md

108 lines
4.8 KiB
Markdown
Raw Permalink Normal View History

2023-10-21 02:09:14 +02:00
# [www.netz39.de](https://www.netz39.de)
2023-10-16 01:36:59 +02:00
2023-10-21 02:09:14 +02:00
## 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:
```yaml
---
layout: post
title: "Titel des Blogeintrags"
author: MaxMustermann
date: 2023-10-20
feature-img: "https://cdn.netz39.de/img/feature-img.jpg" # optional
thumbnail: "https://cdn.netz39.de/img/thumbnail-img.jpg" # optional
2023-10-21 02:09:14 +02:00
---
```
- Schreibe den Inhalt deines Blogeintrags im Markdown-Format unterhalb des Front Matter.
- Bilder eines Blogeintrags werden unter `https://cdn.netz39.de/img/post-img`in das jeweilige Jahr abgelegt.
2023-10-21 02:09:14 +02:00
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:
```yaml
---
layout: event
title: "Titel des Events"
2024-03-16 12:03:01 +01:00
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
2023-10-21 02:09:14 +02:00
---
```
- Unterhalb des Front Matters die Beschreibung des Events in Markdown aufschreiben
2024-03-16 12:03:01 +01:00
- 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](https://www.netz39.de/events) 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
2023-10-21 02:09:14 +02:00
## Installation und lokale Entwicklung mit Docker:
1. Docker und Docker Compose auf deinem System installieren
2. Docker Container im root-Verzeichnis starten:
```bash
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.
2023-10-16 01:36:59 +02:00
## git-lfs
Dieses Repository nutzt zur Verwaltung von großen Binärdaten (Bilder und PDFs) [git-lfs](https://git-lfs.com/). Zur Installation folge bitte der [Installationsanleitung für dein Betriebssystem](https://github.com/git-lfs/git-lfs#installing).
Die Arbeit mit den Dateien ändert sich durch die Verwendung von git-lfs nicht.
2024-02-04 21:28:52 +01:00
## pre-commit
Dieses Reoisitory nutzt [pre-commit](https://pre-commit.com/), um git pre-commit-hooks auszuführen.
### [Installation](https://pre-commit.com/#installation)
```bash
# 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](./.pre-commit-config.yaml)
2023-10-16 01:36:59 +02:00
## License
2023-10-21 02:09:14 +02:00
© Netz39 e.V
- Uses [Type-on-strap](https://github.com/sylhare/Type-on-Strap) theme licensed under [The MIT License (MIT)](/LICENSE)
- Uses Pictures from [Pexels](https://www.pexels.com/) licensed under Creative Commons Zero (CC0) license
- Uses Fonts which are licensed under the [SIL Open Font License (OFL)](https://scripts.sil.org/cms/scripts/page.php?site_id=nrsi&id=OFL)
2023-10-16 01:36:59 +02:00