Signed-off-by: Ralf Zerres <ralf.zerres@networkx.de>
About
advotracker supports lawyers to capture relevant data encountered during an online
legal advice.
The application components are implemented using the programming language Rust. The graphical user interface (GUI) uses the class-lib OrbTk, which is natively encoded in Rust as well.
advotracker can be deployed on every target operating system that is officialy
supported by the OrbTK toolkit. Currently included are:
* macOS
* Linux
* openBSD
* Redox OS
* Web-Browser
* Windows
Porting to and in activ development are:
* Android
* iOS
* ubuntu Touch
Reference is made to the official project pages of [Rust Book]1 and [OrbTk]2 as documentation sources.
Internationalization
Dialogs and messages generated inside the application will respect the system language of the active user. This is adaptable via the environment variable (default: LANG = en_US.UTF8 or LANG = C).
Within the source code you can find translated constants in the subdirectory 'locales' (/src/locales/advotracker.json). For every supported language-string, you will find a block starting with the generic message code, followed by the target language translation. Translation lines are identified by its ISO Code (e.g. de_DE.UTF8, es_ES.UTF8).
Installation from source code
You can either download the advotracker source code as a Zip-File or using git
from projects repositoy URL.
The source code is subdiveded in three crates:
- advotracker
- advotrackerd
- advotrackerdb
Currently the given WEB-URL certificate is signed by a Microsoft CA. Since this CA can't be verified from offical CA-lists you have to proceed as follows:
$ cd <your_path>
$ git -c http.https://gitea.networkx.de:50443.sslverify=false \
clone --recurse-submodules --jobs=10 \
https://gitea.networkx.de:50443/rzerres/advotracker
To compile the target binary code, you have to use rusts toolchain. If this isn't already installed on your development system, please go ahead and either use the official supported installation tool from the rust communtiy ([rustup]3 ). As an alternitiv, you can download and install the compiler package using your systems package manager.
native operating system binaries
A binary compatible with your target operating system will be compiled with the following command:
$ cd <advotracker_root>
$ cargo build --release
The toolchain also allows to cross-compile for other operating systems. Please consult the rust documentation for further instructions.
web-browser application
- Prerequisits
To run as a browser, electron or cordova app, you have to install cargo-node:
cargo install -f cargo-node
cargo-node will require a working version of npm (>=v6.9.0).
You may download [Node.js]4 , which includes npm as well.
- Start as browser app
You can run Advotracker as a web-browser app with the following call.
Once the app is running, you can connect to it opening the given URL
in you Web-Browser.
cargo node run --target browser --bin advotracker
- Start as electron app
cargo node run --target electron advotracker
- Start as android app
cargo node run --target android --bin advotracker
Build and run documentation
You can build and view the latest documentation by executing the following command:
cargo doc --no-deps --open
This will render the web-pages, collecting the documentation paragraphs in the source-code. When finished, it will open a new tab in your web browser presenting the documentation.
Installation
To install the compiled binary you can use rust package manager cargo as well.
cd <advotracker_root>
$ cargo install
In addition, you will need to copy the resource folder into your target directory. This will provide the access to used fonts, images und stylesheets.
This work is licensed under a Creative Common License 4.0
<A9> 2020-2021 Ralf Zerres, Networkx GmbH
Foodnotes
-
Rust Book: https://doc.rust-lang.org/book/ ↩︎
-
OrbTK GUI: https://gitlab.redox-os.org/redox-os/orbtk ↩︎
-
Rustup: https://rustup.rs/ ↩︎
-
Node.js: https://nodejs.org/dist/v10.16.3/ ↩︎
