An open API service indexing awesome lists of open source software.

https://github.com/software-challenge/gui

Software-Challenge Grafischer Spieleserver
https://github.com/software-challenge/gui

gui kotlin software-challenge tornadofx

Last synced: about 1 month ago
JSON representation

Software-Challenge Grafischer Spieleserver

Awesome Lists containing this project

README

          

## Software-Challenge Logo Grafischer Spieleserver der Software-Challenge Germany ![.github/workflows/gradle.yml](https://github.com/software-challenge/gui/workflows/.github/workflows/gradle.yml/badge.svg)

Dies ist die Grafische Oberfläche für die Software-Challenge Germany,
seit Saison 2020/21 in Kotlin TornadoFX aufbauend auf JavaFX.

Nutzerdokumentation: https://docs.software-challenge.de/server.html

> Hinweis: Wenn als erster Parameter des Programms eine Zahl mitgegeben wird,
wird der Server auf diesem Port Verbindungen von Spielern erwarten.

## Für Entwickler

### Erste Schritte

- zuerst das Projekt lokal mit Submodulen klonen:
```sh
git clone git@github.com:software-challenge/gui.git --recurse-submodules --shallow-submodules
```
- mindestens Java 11 wird benötigt
(ggf. `org.gradle.java.home=/path/to/jdk` in `gradle.properties` setzen)
- `./gradlew run` ausführen

### Kollaboration

Unsere Commit-Messages folgen dem Muster `type(scope): summary`
(siehe [Karma Runner Konvention](http://karma-runner.github.io/6.2/dev/git-commit-msg.html)),
wobei die gängigen Scopes in [.dev/scopes.txt](.dev/scopes.txt) definiert werden.
Nach dem Klonen mit git sollte dazu der hook aktiviert werden:

git config core.hooksPath .dev/githooks

Um bei den Branches die Übersicht zu behalten,
sollten diese ebenfalls nach der Konvention benannt werden,
z. B. könnte ein Branch mit einem Release-Fix für Gradle `chore/gradle/release-fix` heißen
und ein Branch, der ein neues Login-Feature zur GUI hinzufügt, `feat/gui-login`.

Wenn die einzelnen Commits eines Pull Requests eigenständig funktionieren,
sollte ein rebase merge durchgeführt werden,
ansonsten (gerade bei experimentier-Branches) ein squash merge,
wobei der Titel des Pull Requests der Commit-Message entsprechen sollte.

Detaillierte Informationen zu unserem Kollaborations-Stil
findet ihr in der [Kull Konvention](https://kull.jfischer.org).

### Java-Versionen und Abhängigkeiten

Aktuell können die Backend-docs nur mit JDK 8 gebaut werden,
dieses Projekt braucht jedoch für [tornadofx](https://github.com/edvin/tornadofx2)
mindestens Java 11.
Daher müssen die Releases separat gebaut werden.

Tornadofx wird leider seit einigen Jahren nicht mehr entwickelt.
Wir schauen gerade wie es da weitergeht.
Eventuell ein eigener Fork.