English |
Englisch
# AdvoTracker Hotline Tools für Advokaten
`AdvoTracker` unterstützt Anwälte bei der Erfassung von Mandatsdaten zu einer Online-Beratung.
Die Anwendungskomonenten sind in der Programmiersprache *Rust* implementiert.
Die graphischen Benutzerschnittstelle (GUI) verwendet die Klassenbibliothek *OrbTk*, die
ebenfalls in *Rust* entwickelt wird.
Die Anwendung ist auf allen durch das Toolkit unterstützen Pattformen ablauffähig.
Hierzu zählen derzeit:
* macOS
* Linux
* openBSD
* Redox OS
* Web-Browser
* Windows
In Entwicklung befinden sich native Portierungen auf folgende Systeme:
* Android
* iOS
* ubuntu Touch
Als Dokumentationsquellen wird auf die offiziellen Projektseiten [Rust Book][^1] und [OrbTk][^2] verwiesen.
# Internationalisierung
Alle Dialoge und Meldungen verwenden für die Ausgabe von Texten, die vom Anwender
gewählte Sprache. Sie kann über eine Umgebungsvariable ausgewählt und angepasst
werden (default: LANG = en_US.UTF8 ).
Die übersetzten Sprachtexte finden sich im Quell-Code Unterverzeichnis 'locales'
(/advotracker/src/locales/advotracker.json).
Für jeden unterstützen Sprach-String existiert ein Block mit der generischen
Nachrichten Kennung, gefolgt von spachspezifischen Übersetzungszeilen.
Die Übersetzungszeilen werden mit dem ISO Code der jeweiligen Sprache identifiziert.
# Installation aus dem Quell-Code
Sie können den Quell-Code von `Advotracker` unter folgender URL als Zip-Datei,
oder unter Verwendung von `git` herunterladen.
Der Quell-Code ist in drei Submodule untergliedert:
* advotracker
* advotrackerd
* advotracker-db
Da derzeit ein signiertes Softwarezertifikat einer Microsoft Zertifizierungsstelle
verwendet wird, kann git die Gültigkeit dieses Zertifikats nicht gegen die
offiziellen CA-Listen prüfen. Bitte gehen sie wie folgt vor:
```sh
$ cd
$ git -c http.https://gitea.networkx.de:50443.sslverify=false \
clone --recurses-submodules --jobs=10 \
https://gitea.networkx.de:50443/rzerres/advotracker
```
Für die Erstellung des ausführbaren Programm-Codes wird die Rust Toolchain-Umgebung
verwendet. Sollten diese noch nicht auf Ihrem Entwicklungssystem installiert sein,
verwenden sie entweder den von der Rust-Entwicklergemeinde bereitgestellten
Toolchain-Installer [rustup][^3], oder greifen auf Installationspakete des
Paketmanagers auf ihrem Betriebssystem zurück.
## native Anwendung für das Ziel-System
Ein für das Zielsystem passendes binary wird durch folgenden Aufruf erzeugt:
```sh
$ cd
$ cargo build --release
```
Die Toolchain unterstützt auch die Erstellung von binaries für andere Ziel-Systeme (cross-compile).
Bitte lesen sie hierzu in der `Rust` Dokumentation für weiterführende Instruktionen.
### Web-Browser Anwendung
Um `Advotracker` als Web Applikation zu starten (web-browser, electron, cordova),
muss zunächst das crate `cargo-node` installiert werden:
```sh
cargo install -f cargo-node
```
`cargo-node` benötigt seinerseits eine Version von `npm` (>=v6.9.0), dem
Node Paketmanager. Im Downlaod von `[Node.js][^4]` ist npm enthalten.
- **Browser App**
Mit dem nachfolgend angeführten Befehl wird `Advotracker` als WEB-Browser App gestartete.
Verbinden Sie sich anschließend mit Angabe der definierten URL in Ihrem Browser-Fenster
mit der App.
```sh
cargo node run --target browser advotracker
```
- **Electron App**
```sh
cargo node run --target electron advotracker
```
- **Android App**
```sh
cargo node run --target android advotracker
```
## Erstellen der Dokumentation
Die aktuelle Dokumentation wird mit dem nachfolgenden Befehl erzeugt:
```sh
cargo doc --no-deps --open
```
Die Dokumentationspassagen werden aus dem Quellcode extrahiert, und als WEB Seiten
aufbereitet. Ist die Erstellung abgeschlossen, wird ein neuer Tabulator mit den
Dokumentationsseiten in Ihrem WEB-Browser geöffnet.
## Installation
Die Toolchain unterstützt die Installation der ausführbaren Programme:
```sh
cd
$ cargo install
```
Zusätzlich kopieren sie bitte noch den Ordner mit den Ressourcen in das
Zielverzeichnis (enthält fonts, images und stylesheets).
---
[Logo-CC_BY]: https://i.creativecommons.org/l/by/4.0/88x31.png "Creative Common Logo"
[License-CC_BY]: https://creativecommons.org/licenses/by/4.0/legalcode "Creative Common License"
Diese Dokument ist lizensiert unter der [Creative Common License 4.0][License-CC_BY]
![Creative Common Logo][Logo-CC_BY]
© 2020 Ralf Zerres, Networkx GmbH
---
Fussnoten
[^1]: Rust Book: https://doc.rust-lang.org/book/
[^2]: OrbTK GUI: https://gitlab.redox-os.org/redox-os/orbtk
[^3]: Rustup: https://rustup.rs/
[^4]: Node.js: https://nodejs.org/dist/v10.16.3/