diff --git a/README.md b/README.md index fb34443..4599a0f 100644 --- a/README.md +++ b/README.md @@ -1,16 +1,50 @@ # swablab.de -[![Build Astro CI](https://github.com/swablab/website/actions/workflows/main.yml/badge.svg?branch=main)](https://github.com/swablab/website/actions/workflows/main.yml) +Repository für den Quellcode unserer Vereinswebsite +[swablab.de](https://swablab.de). -These are the source files for the page published at https://swablab.de. +Wir verwenden die folgenden Technologien: -Powered by [Astro](https://astro.build) +- [Astro](https://astro.build) für den Inhalt und die Struktur +- [DaisyUI](https://daisyui.com)/[Tailwind](https://tailwindcss.com) für das + Design +- [Deno](https://deno.com) für den Build +- [nginx](https://nginx.org) für die Bereitstellung -# Installation +# Entwicklung -We recommend [deno](https://deno.com/) as the package manager. To install all -required packages, execute `deno task install`. +Um die Entwicklung einfach und einheitlich zu gestalten, benutzen wir +[Devcontainer](https://containers.dev) in +[VSCode](https://code.visualstudio.com). Wenn du das Repo in VSCode mit der +Devcontainer-Erweiterung öffnest, dann werden alle Tools und Erweiterungen für +die Entwicklung automatisch für dich installiert. Wenn du das nicht willst oder +kannst, musst du Deno von Hand installieren. -Afterwards, you can develop with `deno task dev` and build with -`deno task build`. It is recommended to use VSCode as your editor, as all tasks -can be executed easily within VSCode. +Folgende Tasks sind definiert und stehen auch als VSCode Tasks zur Verfügung: + +- `deno task install`: Installiert/Updated die Abhängigkeiten +- `deno task check`: Überprüft den Code auf Fehler +- `deno task dev`: Startet den Dev-Server und läd bei Änderungen neu +- `deno task build`: Baut die Website (wie beim Deployment) +- `deno task preview`: Zeigt die gebaute Website an + +Der Dev-Server ist sehr praktisch zum Entwickeln, verhält sich aber manchmal +etwas anders als der Build. Deswegen sollte nach Änderungen noch einmal die +Funktionalität mit dem Preview-Server getestet werden. + +# Änderungen + +Wenn du etwas ändern willst, oder dir etwas aufgefallen ist, dann öffne gerne +ein [Issue](https://git.swablab.de/swablab/website/issues) und beschreibe +möglichst genau dein Problem. + +Alternativ, kannst du die Lösung auch gerne selbst entwickeln und einen +[Pull Request](https://git.swablab.de/swablab/website/pulls) stellen. + +# Deployment + +Wenn Änderungen den `main`-Branch erreichen, wird automatisch eine +[Pipeline](https://git.swablab.de/swablab/website/actions) gestartet. Diese baut +die Website neu und pusht das Image als +[Package](https://git.swablab.de/swablab/website/packages). Dort wird es +automatisch von Watchtower regelmäßig aktualisiert.