Welchen Technologiestack verwendet ihr für die Entwicklung?

Der Server ist in Go geschrieben. Er verwendet Gorm als ORM zum Zugriff auf die Datenbank.

In der Netzwerkschicht wird Echo verwendet. Zur Unterstützung der Konfigurations- und Kommandozeilen-Funktionalität benutzen wir Viper und Cobra.

Viele Ideen über die Bedienung auf der Kommandozeile haben wir aus unserer langjährigen Erfahrung im Cloud Umfeld bezogen: die Arbeit mit Docker, Kubernetes und ähnlichen Tools zeigt, wie man auch bei komplexen technischen Werkzeugen eine für den Administrator angenehme CLI schaffen kann. Von diesen Tools haben wir auch die Ideen für das Rechte- und Rollenkonzept übernommen. Das macht sich positiv im Betrieb bemerkbar: Administratoren, die diese Cloud Werkzeuge gewohnt sind, kommen ohne großen Lernaufwand mit unseren Applikationen klar. Inkasso.live fügt sich nahtlos in eine Cloud-Native Infrastruktur ein.

Der Client basiert auf Typescript. Als UI Framework haben wir Quazar verwendet. Das ist eine Erweiterung von Vue und liefert die Basisinfrastruktur für die visuellen Komponenten.

Der Client ist eine PWA (Progressive Web App auf Basis HTML5 / CSS3) und benötigt somit einen Service Worker. Quasar liefert hier im Standard Workbox aus, welches sich als sehr zuverlässig erwiesen hat. Eine vormals eigene Implementierung haben wir während der Alpha Phase inzwischen vollständig ersetzt. Workbox bringt die Offline Funktionalität der App. Die Offline Funktionalität der Daten ist eine Eigenentwicklung, die im Backend IndexedDb verwendet.

Für die Authentifizierung wird WebAuthn verwendet, welches inzwischen von allen gängigen Browsern unterstützt wird. Somit erreichen wir eine breite Abdeckung an unterstützten Endgeräten.