View on GitHub

BudgetButlerWeb

Einfaches und flottes Haushaltsbuch mit Offline- und Online-Funktionalität

Download this project as a .zip file Download this project as a tar.gz file

Begleiter Web-App

Weitere Seiten

Inhaltsverzeichnis

Mobile Schnellerfassung

Idee

Die Begleiter Web-App ist eine Web-Anwendung, welche als Begleiter zur Desktop-Anwendung BudgetButlerWeb dient. Sie soll ermöglichen, dass Buchungen auch ohne direkten Zugriff auf die Desktop-Anwendung erfasst werden können.

Sie ist nicht für eine dauerhafte Datenhaltung konzipiert, sondern soll lediglich als temporärer Speicher für Buchungen dienen. Die Desktop-Anwendung kann die Buchungen aus der Begleiter Web-App importieren und anschließend löschen.

Jeweils 2 verschiedene Accounts können gemeinsame Buchungen erfassen. Beide Nutzer können die als gemeinsame Buchung erfassten Ausgaben einsehen und bearbeiten. Abschließen kann eine Partei die Buchungen beider in der Desktop-Anwendung abrufen und eine Abrechnung erstellen. Nicht abgerechnete Buchungen können anschließend wieder in die Begleiter-App importiert werden.

Betrieb

Systemanforderungen für den Betrieb:

Ein Beispiel-Docker-Compose-File kann in docker-compose-examples eingesehen werden. Für den Betrieb müssen in api.env sowie in db.env Parameter beispielsweise für den OAuth-Flow ergänzt werden.

Für SSL wird ein Reverse-Proxy benötigt, welcher die Zertifikate bereitstellt. Hierfür kann beispielsweise nginx-proxy mit dem Lets Encrypt ACME Companion oder Traefik verwendet werden. Ein Beispiel-Docker-Compose-File für nginx-proxy kann bei Nextcloud eingesehen werden.

Build

Aktuell werden automatisiert Docker-Images mit Github-Actions gebaut und auf Docker-Hub deployt. Die Images können hier gefunden werden.

Falls du die Begleiter Web-App selbst bauen möchtest, findest du im Folgenden die Anforderungen und das Vorgehen.

Anforderungen zum Build

Build in der Entwicklungsumgebung

Systemanforderungen:

Vorgehen:

oder:

Systemanforderungen:

Vorgehen:

Besonderheit: Desktop-Client befindet sich im Netzwerk

Dann muss die Adresse des Servers über die Umgebungsvariable ALLOWED_REDIRECTS zusätzlich für die lokale Authentifizierung freigegeben werden