Rust backend for NaluDAQ
Project description
NaluDAQ_rs
Rust backend for NaluDaq.
Setup
Make sure the Rust toolchain is installed.
Clone the repository to a suitable location:
$ git clone https://github.com/NaluScientific/naludaq_rs.git
Done!
Building the backend for python
pip install maturin
maturin build
Building the Backend
The backend is easy to build:
$ cd naludaq_rs
$ cargo build --release
Developers may ommit the --release
flag for unoptimized builds.
Building for RPI4
Building using docker:
docker build . -t cc/rpi4
to make the container, the build the app with:
docker run --rm -v ${pwd}:/app cc/rpi4
Running the Backend
To run the backend, run the following command:
$ cargo run --release -- [<ROOT>] [--addr <ADDR>] [-d | --debug] [--api]
Where the arguments are as follows:
<ROOT>
is the root directory to run the server in. By default, it is the current working directory of the terminal it was run from.--addr <ADDR>
is the address to bind the server to in the formatIP:PORT
. If unspecified, the server is bound to an open port on the loopback address.-d | --debug
shows additional debug messages.--api
will open the Swagger UI in the system browser.
Documentation
The documentation can be built using the following command:
$ cargo doc --document-private-items --no-deps
The API
NaluDAQ_rs is controlled through its REST API over HTTP. This allows it to be controlled from any machine connected to a network.
The backend can be controlled on the fly via Swagger. Use the --api
flag when starting the backend to display the Swagger UI.
Alternatively, the (non-interactive) Swagger UI may be viewed without the backend by running the following command:
$ cargo run --bin api -- [--output OUTPUT_FILE]
If the --output
argument is provided, the OpenAPI JSON data describing
the API is written to the file and the program will immediately exit.
Developers
Profiling
Use the build profile called `release-with-debug for building release mode with debug symbols.
$ cargo build --profile release-with-debug
On Windows machines with Intel processors you can use Intel VTune to profile the backend.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distributions
Hashes for naludaq_rs-0.1.11-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 52aadefca213cfbf85abf1c9df4097171e12d81474720551f0a1b3b011ca02ed |
|
MD5 | 8dd0d137289ad7cc61469ea335efc1a0 |
|
BLAKE2b-256 | d7e73566af4e0365a2c4e408b7a6b75990c99ad62a052683bab3df511dbfc513 |
Hashes for naludaq_rs-0.1.11-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | fd25396353a3987332db51e918c55523ee13ca9d9121fdd5876bce7e423cce5e |
|
MD5 | 834db330f7b5ac9f6313fdb89ea46ca7 |
|
BLAKE2b-256 | b7bec15b73959293a637bdaa66cf46eaf8dca66ad010d69c22ee499fe50abc23 |
Hashes for naludaq_rs-0.1.11-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d6a0e5c077b61065c56d767496156ce23aeadbd8276286451e4e8857969cd8b9 |
|
MD5 | a3d4cec58e439f063310edf19d01f9e5 |
|
BLAKE2b-256 | acc9b6abe97bdc06c3052ef4e15308319967b79eca4c15252f4d5f1e63eba17c |
Hashes for naludaq_rs-0.1.11-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e5e93f37d32547309a77f71754757b9a2a17e27431a58571d4138e339987d488 |
|
MD5 | 5e05a19053955071fbadea56d6a64741 |
|
BLAKE2b-256 | ee555b7fa4ec62a4253277828feed1c09fdb2c21e2c39114d28b27a0d66a5b90 |
Hashes for naludaq_rs-0.1.11-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 202192b5548bca848effc1779816525b4c75e4e0225266eea347bb416a63a27a |
|
MD5 | 34733c81fe32ec9ca8b7b20cc639c28a |
|
BLAKE2b-256 | f2b6aeb12904bcef1d6d987af0d03c9295842ebcd5654954a2f2a4562ff4dd2f |
Hashes for naludaq_rs-0.1.11-cp311-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 563d18483a44caec59f58d0294bd2a962adb6578d797a46d1fdb8d057dc8a513 |
|
MD5 | e1452b6512018fbc01001abe32505c11 |
|
BLAKE2b-256 | 76243f7fcca4a25e14d9bba2074b6155eff4ab400c08be6adc51e7c1d138fac9 |
Hashes for naludaq_rs-0.1.11-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c431f257120cffe5683524c2b1c12efacc2125ba3b8b5e026a70dece739dc2ac |
|
MD5 | d305eb6bb885386dc3c02b502f42f257 |
|
BLAKE2b-256 | 1e40c2ea3cac75560fe2e606ef32d308dd3412a4c68366e298ec86f60197bd18 |
Hashes for naludaq_rs-0.1.11-cp310-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1fa805fddf223ac881207f3d3cdb152314396bfbee9af976126f6b2e1027da21 |
|
MD5 | 3ab06701c3142fb5070a7e8c7b479050 |
|
BLAKE2b-256 | e643ef6fd973c2b4d678344ff6ea212c83382f9e0287cc19f50c02792a1bac0f |
Hashes for naludaq_rs-0.1.11-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8facd3fba5f3f82a6765c3e36521b28fbee243b65efe9da2cc5360c1215cf48a |
|
MD5 | 07c2efc0b2f067a4efd1fed33627a7fd |
|
BLAKE2b-256 | 953415f00e0b91df160a6f1d9b8e12246f32cd2e2535bd1dc0ab95e348484e18 |
Hashes for naludaq_rs-0.1.11-cp39-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5fa7d147dc715e6914de9f20cf7bdc3b59b74941308a399f8cbed40bd8f33f55 |
|
MD5 | 53f9e3f063656a94987ea10ccde50265 |
|
BLAKE2b-256 | 0101af26eec0b08ff83425fed0926409268b1542c8e662dfa4644e04a41a129d |
Hashes for naludaq_rs-0.1.11-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f15794578db82694731c5c790592922505781e3e0cca7ff910c08dd198a37d4a |
|
MD5 | 0545c0f297cf71e5cef38a657b28252c |
|
BLAKE2b-256 | a5b071651bd41cec10ba8f80ca69b34cb79fd74b217a2c6ab3e4cba31c4c08c9 |
Hashes for naludaq_rs-0.1.11-cp38-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 43fa6817f7c346ce9b9d4f0de41ea2528b623f505a1dc9a2a4ae2cb54279e0c7 |
|
MD5 | 8d3d92ccdf4fe61584a6ad5363d419f1 |
|
BLAKE2b-256 | 801c781795c7b0a2d76f02ba991f4e3f6c8f8f58a72fc260763b061f4b60eb1e |
Hashes for naludaq_rs-0.1.11-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 786d225098c4782918798221635bbbd319e4ff860081b53ff3f71c5c6f1400b1 |
|
MD5 | 3b6a0e314a3ad9117e96e3995756075d |
|
BLAKE2b-256 | 63e0e7a37b22bd770d19ac76f5e53ffae349a6bee94877193fd036cd0d73a28f |
Hashes for naludaq_rs-0.1.11-cp37-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1c4cfb7394bf4ef41524ac464b9603e6799d9a3ce6070ab0f7df97fc3af9589b |
|
MD5 | ea38c27624e789407b68a5e63d82cdd4 |
|
BLAKE2b-256 | 43cd58be9e6d4c092324d1da72d001cf0bc1b55c21a9b8dc12ea2fc17579f122 |
Hashes for naludaq_rs-0.1.11-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 958ad0f68ef4f0dd0662da7c41a838603f261a50ab81581989792baf53c009ba |
|
MD5 | f6a8992ff4437b4aebae9ecdfa5ea470 |
|
BLAKE2b-256 | 4461dfbb2d7dab335c7e26ef824393a7d983f9013f3b3b493e280edf65ca9f86 |