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.2.1-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8a86e27a063ffce94a66e416cca7948989c6c04f837fe08670961b21848f4a95 |
|
MD5 | 55e3258607619096aa29a4da57cd79e3 |
|
BLAKE2b-256 | d8f165bbdd838fe8812440d9c0859ab193eebef5d1bdec4bfdb1937e6d6a3cb4 |
Hashes for naludaq_rs-0.2.1-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ae267a20fd8b1c49b07f9118231694a274e866a5b779e8de36641ba75a1eb310 |
|
MD5 | 214c5a7cda9f6c92081519def68189ef |
|
BLAKE2b-256 | 3c514184bd2dd3ced6bd68aee8a12db9b5a543b78cca26bc5e64f00fe3dfeb29 |
Hashes for naludaq_rs-0.2.1-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 63d9d8d2311d64eb405b325d877c824706cb2fe4672d1af03f0225e61be0c65f |
|
MD5 | 1adaa6170eaee943c34345ad7c923856 |
|
BLAKE2b-256 | 68ff7ca558785291c719847c45354b4d718dec0669b498408836900efcfe0556 |
Hashes for naludaq_rs-0.2.1-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5f8352aa4deb85ff0b1824acebb9f16e209f954c0a4b40caec732f51504d7c26 |
|
MD5 | b37322f67dbeac703754b3f39990601c |
|
BLAKE2b-256 | be6b3a633b6390bb3556632a1c64284e2b1decc1fa9f9e4b1cd3b50cfd99082a |
Hashes for naludaq_rs-0.2.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5a104e6042988c9d153493ab3d2e33e4fecaad609fa93da1da7673b87378f417 |
|
MD5 | 18b597c2ff55a88fa68d6911eba1b051 |
|
BLAKE2b-256 | 588fe77fa43773ab778eeca150ef828a3e7dbe30eff648851734f889e0ee2014 |
Hashes for naludaq_rs-0.2.1-cp311-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2e8cd3c37e8d9621588de08e5f0f5f28bb1a1b9dbffd9c1815eba1a4ea1be761 |
|
MD5 | 0e4228d7116cacce174f71fa61da5746 |
|
BLAKE2b-256 | 78e7b73d465ed527eea979738efa56aeb5aed8df8de23095f325daed3b6fe36a |
Hashes for naludaq_rs-0.2.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 93212c920bd4dff8f0df40ea347593f62a794062679b3047e0d115776d38c4a6 |
|
MD5 | 89e1509ef4ce899239ea21434d0157cc |
|
BLAKE2b-256 | 31a303022161fb41ddc88c7da78d337dca1e51b984354dba603ebf9a4c18a46c |
Hashes for naludaq_rs-0.2.1-cp310-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 707d2bee8179c01252838300a5cd57df8850b446cd657b77ea457c1283a03efb |
|
MD5 | 1702052fd91f667ec94c9edbfca393da |
|
BLAKE2b-256 | 6ae84537b811f614597073621e55b0e5a5156b88733c6298eb211b9cc1d23c77 |
Hashes for naludaq_rs-0.2.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d09973c590ff65edd1ab5d64df4f42c73ce5ba3691607441646b95078599419e |
|
MD5 | e518ecf7aaae061d2693f4aec15cab67 |
|
BLAKE2b-256 | 2d822f3b712fbc69a87ae663e971be56415493fa77e1fd537d8ee565f5d32d57 |
Hashes for naludaq_rs-0.2.1-cp39-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e2a36f5e706937bc341785bc01871edc28a35762820732acc3883223930fbe42 |
|
MD5 | 7416c198775542bc396a67beadf135f1 |
|
BLAKE2b-256 | 8bba959c67b3d82240cc8adaed6ce87ebe68b9dd386d0bd30a3428a4b0ec3bf6 |
Hashes for naludaq_rs-0.2.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e3fa4666c5aac9b6410c801a25f45f2e13e999cbbf72c20724029a1ae0213bb8 |
|
MD5 | 3cffef132f0e4691d3a491799e37602c |
|
BLAKE2b-256 | fa6e304c504570a240daf6b4b6fbb8ab652b5defe958df22bf7e922b01ae54ba |
Hashes for naludaq_rs-0.2.1-cp38-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f5ebfe12aa2ed838d4771ab77239483ed700236b529c27f2a2bcb91deef8d647 |
|
MD5 | 657f8ce94e17ab05bc9c5ecaaf448117 |
|
BLAKE2b-256 | a80db5d3d2f03798c4d7c9cda8e5de9f9137e68c52e8cd7daebc34e96074882f |
Hashes for naludaq_rs-0.2.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 07cf08e39c889343af42d01d7833035f2afe14c980795bed0a04e305e68514e7 |
|
MD5 | 6153d477d3023a68807fa71fa671e7c8 |
|
BLAKE2b-256 | a6520b6e509f2080fcc3a3973af039c15d58eb18a9b7b962ceb9d35ba9757df8 |
Hashes for naludaq_rs-0.2.1-cp37-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 450a81782ed7dc82467dd6ac3ddf9c8744a790a9fc44556c1acfe9bfc1e1a1bd |
|
MD5 | d959c23796c4a047a0ae513b70013138 |
|
BLAKE2b-256 | f2af9965629bd2d98289fd48cb9139b101f26e77dca3c2a9a3fbdbb539a8e63a |
Hashes for naludaq_rs-0.2.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3d595f958e30efac4a64406dec839603aa0eab372019c4e961cb02ee49727ab9 |
|
MD5 | abf414342805d5b1ad384b8cba8c2b68 |
|
BLAKE2b-256 | 785719350da8365cf82c59a51e1b57b65ecf066d0c7f6bb8b8a14f0f91117b08 |