* advotracker: the framework project * crate/advotrackerdb: implementation of the database backend * crate/advotrackerd: implementation of the backend (daemon) * crate/adovtracker: implementaton of the application (CLI and GUI) Signed-off-by: Ralf Zerres <ralf.zerres@networkx.de>
162 lines
4.5 KiB
Markdown
Executable File
162 lines
4.5 KiB
Markdown
Executable File
<!-- AdvoTracker README.md -->
|
||
<!-- version: 0.1.3 -->
|
||
|
||
<!-- markdown-toc start - Don't edit this section. Run M-x markdown-toc-generate-toc again -->
|
||
<!-- markdown-toc end -->
|
||
|
||
## 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'
|
||
(<crate-root>/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:
|
||
|
||
```sh
|
||
$ 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:
|
||
|
||
```sh
|
||
$ 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:
|
||
|
||
```sh
|
||
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.
|
||
|
||
```sh
|
||
cargo node run --target browser --bin advotracker
|
||
```
|
||
|
||
- **Start as electron app**
|
||
|
||
```sh
|
||
cargo node run --target electron advotracker
|
||
```
|
||
|
||
- **Start as android app**
|
||
|
||
```sh
|
||
cargo node run --target android --bin advotracker
|
||
```
|
||
|
||
## Build and run documentation
|
||
|
||
You can build and view the latest documentation by executing the following command:
|
||
|
||
```sh
|
||
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.
|
||
|
||
```sh
|
||
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.
|
||
|
||
---
|
||
|
||
[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"
|
||
This work is licensed under a [Creative Common License 4.0][License-CC_BY]
|
||
|
||
![Creative Common Logo][Logo-CC_BY]
|
||
|
||
<EFBFBD> 2020-2021 Ralf Zerres, Networkx GmbH
|
||
|
||
---
|
||
|
||
Foodnotes
|
||
|
||
[^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/
|