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.4-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 48e7a122562d79c002bca716b9d3443ba9b7dddf88811c707de314fc2c987aa8 |
|
MD5 | 5b2b810cd140eebd9e6968b6b47c1871 |
|
BLAKE2b-256 | 96de6dfb0a5f20c26dec4a74280eb40e776cd010a5f74f5207d38bb2ee0233fb |
Hashes for naludaq_rs-0.2.4-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6b35c6a62a5a1ee058553474a849a9cf5c065d357ba6dc63600fb179c530300d |
|
MD5 | 9279e5f0d9b7897581ddf0ee7cc7ea8e |
|
BLAKE2b-256 | 935b358989ea5ba7e9c311b3e3001ff912c0c1235941ff41c7a56e2adddbe78f |
Hashes for naludaq_rs-0.2.4-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4f06bfda9c8041252166262def893be6019c37da9bae38823d55199225e1bd0b |
|
MD5 | d3081de261c782bec4d7b3cc25e44c07 |
|
BLAKE2b-256 | 4e8bbe6555431637cecd9037e8205a23375405a8006e0140f33879117cf184b3 |
Hashes for naludaq_rs-0.2.4-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4abc01adbc4cd4f81d98015590b369d31f9a6913b4edf332c833d86b8763f86f |
|
MD5 | 8f8feec3e4e6e22e3bbc97ff807a9c91 |
|
BLAKE2b-256 | 5e92d8bb24d3fa1a2c4788a45f23bf151adbeb33862d453a5e077130bf539309 |
Hashes for naludaq_rs-0.2.4-cp312-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | bc46711007b25b58a8e647e37045dbc3dd62812fcedf104fcff0ea9de0bf72cb |
|
MD5 | 1d917e637e195c709f670640d512d4cd |
|
BLAKE2b-256 | e1d5765ae90be103e65d7cea4137327a56fd4ad07ed2a7666f958651f2413b3a |
Hashes for naludaq_rs-0.2.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 336622c7532d280975d107c7bfbedd0c1f7bdd47e2cc87d4fc35a54ab682cf52 |
|
MD5 | dcd961d6ccb84d29396e38756b715c8e |
|
BLAKE2b-256 | af4e7456269e5a957bec6120379e27855682cd5592963f757c1a85b4393e0ecc |
Hashes for naludaq_rs-0.2.4-cp311-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 79981a377eb5c80fa9b7326a937e8ca48794e8f4040df8a9f58402a7f1637139 |
|
MD5 | 3ba154174f22c40229a6b368796230ca |
|
BLAKE2b-256 | e9654986128dc2375c01e4a75665cb6e8bf2da646691fe827129a71d1cc029db |
Hashes for naludaq_rs-0.2.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a2ccde21c10c6d2ae5a61912950bdf59174051a2ef269dfc332f21dbfd6e4be0 |
|
MD5 | 9b79d7f78f93b6a7ed375535198f9b53 |
|
BLAKE2b-256 | fc0718f2f0faa17a9e36464bce1cc5dad761a77e2c137564ffb44d513361f951 |
Hashes for naludaq_rs-0.2.4-cp310-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 21ca7c2eeb5114e3ff48796c2e04f8ca5e65ba06fe4107ab26909be530a917e1 |
|
MD5 | f730fdd61300dcead97900805efed1a8 |
|
BLAKE2b-256 | c2099bca0377bf9d56fff534318be43a9be45e4a6d25eaf0f940a8344b6f6d0c |
Hashes for naludaq_rs-0.2.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 31479ee9918bde97ce0d3f813d73d90d60c1e05c11a9bdcff1a0783b79cb9c77 |
|
MD5 | f4168178225dbe250f90887448bd5316 |
|
BLAKE2b-256 | 9a405bb877e545755a20f677c3a073aedb21cf048a9f060f1e730fca00e8dc31 |
Hashes for naludaq_rs-0.2.4-cp39-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 540621e92eadf34eae1fd06e150b0252987d4d52dfdb2b1a6361208e783f054c |
|
MD5 | cba6eefeeb3f9af5d5518221c0ce1b3c |
|
BLAKE2b-256 | d53f434d3c0df20493cc8eaf4ab082ff301ea20b81257bac7964cbba957d9fde |
Hashes for naludaq_rs-0.2.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 922339c1acaeee304906a8ffe321ee1cf2418ac6841d1cd0352d6c3be676cd10 |
|
MD5 | 9ee1c13809683f55d4f728fd7e6503c0 |
|
BLAKE2b-256 | 1f818971eed31f20ad0ec39c71f8600322b54f54ba1201f85ae8c866130e12e3 |
Hashes for naludaq_rs-0.2.4-cp38-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9711dbc3bd69af22eca08a408f98b1de6035329ab7c90819c5c3e84084109c9a |
|
MD5 | 1eb51f274a125d936fde606762c00756 |
|
BLAKE2b-256 | e298a99e08f488384a43fa3b021dda854c5193cf08e1b7accfb8153d2abd02ef |
Hashes for naludaq_rs-0.2.4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c30f281f099c897a56cb8a5542fcd3dad1329f03bfefe643acd85f5db879abf0 |
|
MD5 | fa0ff852ae6256a904a839dd707a578d |
|
BLAKE2b-256 | 246f0fa02337198eb3e046618ac108a9933c1878eeb7e022a40f38855d5d4369 |
Hashes for naludaq_rs-0.2.4-cp37-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c28b9d598cf3e0c6f2ab81e76066038448c27245506b3d512e4821fddfcdc849 |
|
MD5 | ace2e9a6031881a34b9af3340855b1b6 |
|
BLAKE2b-256 | cbcb7ffa2dca99d209528fc1e13a1ccf85f3b1b27d7e29f87de21763e2351140 |
Hashes for naludaq_rs-0.2.4-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5522b41a3337c5ed4f7a4d2b718c797fb285c8b16d833941769305281333ea37 |
|
MD5 | 77a6c9989c2a856d928f2389515df0f2 |
|
BLAKE2b-256 | 1364a180873a32883690ac4e611f790359d181fc877d1aa6c66f9fbdaf2c5636 |