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.3-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d72abce576194a8a37d21ea5f824315b5f26c4cb098c9ace103804a15f1ce677 |
|
MD5 | a06e1af09c6f95c567761b1deeba301b |
|
BLAKE2b-256 | c7c03e3ea3f9ea2086c0dd56ad32b899f542ccc9bedd13d5f4a013778bfdcd92 |
Hashes for naludaq_rs-0.2.3-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | fe820e332ad27a184b751679866bdc372cc7f3ccbbe264f782ccc780b1662a66 |
|
MD5 | 637f56b2be086bac02cdff1f5c085e2a |
|
BLAKE2b-256 | 99d4c441bf9c38e7d990ce1444b42c9b366fbbbca10ff83f166e20744c331f46 |
Hashes for naludaq_rs-0.2.3-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | cebb140d1da9c1287ea97273c317b9e4c6ec2e14a3385579b41bc4d65bc907e0 |
|
MD5 | dc2b8af41d90093c27b155424e61c791 |
|
BLAKE2b-256 | e98b3adbd7078fb41f58b7ea2c46cf0614e42fbd3ec6c726ac25be75a42d747f |
Hashes for naludaq_rs-0.2.3-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b0b545f476e64b9a43af51d4a1991c080427f32cab1257de71df9ad44131d7c6 |
|
MD5 | f7d18721c06ba4cec6e5be1e81f4c301 |
|
BLAKE2b-256 | e6e8a79c7efa8ab69fc585a6a4d367d9145efa04667070c760dfcdb914a13e21 |
Hashes for naludaq_rs-0.2.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 653b52ef5b7e5bd92dbbd485d39cc58599875524bbf4c6d459f7dc9fa2b3c9d7 |
|
MD5 | 03c45cfa49b8aba95751fa86e3c2b111 |
|
BLAKE2b-256 | 6483800c4219311a75df939ec1ab4d40cd7e1eb3ea7958adc71f9d40228ff659 |
Hashes for naludaq_rs-0.2.3-cp311-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d10d1765c18320909cd7b5396264f945f7b369b58faae24b6544cc7f5426a768 |
|
MD5 | 7f359caeaf66e104b9129a4625377a17 |
|
BLAKE2b-256 | 3ef8a2538c68776f49f7cf35bbab54185456f9b58a88a2a1402a4b4e5d7a3946 |
Hashes for naludaq_rs-0.2.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a1ad406061f05033e28e25f93091471e2db2fc4a9607a55744d8ce9f1c2fe4ec |
|
MD5 | 417724e24b18f76da99e2cf80f71873d |
|
BLAKE2b-256 | 33f2cad00a21e69107f9ad5ca2dd98ccbf844db3b07635a949207376cc4bcb81 |
Hashes for naludaq_rs-0.2.3-cp310-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7613849be6cf2401dbbe7eaec229ccc897776d21445b41ec784f5f85bbb7b5c1 |
|
MD5 | 7ce75610ceea0480adad1e04cd15228d |
|
BLAKE2b-256 | a731f1fcb689ff84a8b6148c603126ef1c5b6084ba3511b8657e87dbefcbb7df |
Hashes for naludaq_rs-0.2.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 741c3958168bdd1fbb7616c8e3042096e131d8b357e612d423000d62bc764021 |
|
MD5 | 934b4ec965f0460ac97636d7b3e5144b |
|
BLAKE2b-256 | 7783eb8a474da0bee38fd5cc1e025aaed0af2517b3cf033c97ee28a1212a9075 |
Hashes for naludaq_rs-0.2.3-cp39-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 47d1ee03ca09af5c666402523a16ff16f7ae7591c45de2032a10a40929eec142 |
|
MD5 | e164f9091985d4caf16cc022abdf8c0a |
|
BLAKE2b-256 | 3ea013f82b67854b18504c263501e51d9579f4ede780f9e451ae02f63f6b176c |
Hashes for naludaq_rs-0.2.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4d7707d42f9752aee4f138b491820be6ddc5c1dde863cf90084a8f98d432e80b |
|
MD5 | 3fd7cf1659a0751c47dd226b82b8d607 |
|
BLAKE2b-256 | 108c7c56001a4507cc6ad4e233aa80af1ca7b085f73a5724363d872fc58e597c |
Hashes for naludaq_rs-0.2.3-cp38-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d3d8870c4c6ba2c5b7aa277e29eecbba86791c3e2765d8ddba2e783bdca00063 |
|
MD5 | a2496c897eef64bcf0e06fde9b287665 |
|
BLAKE2b-256 | 28fe224c0b69279ae53325047c2fc9569190c4237881fe2abd0129af3eeba41d |
Hashes for naludaq_rs-0.2.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 10470c2703f854107769da6201fc8b9695891880d379ccdc2135707e853cc1dc |
|
MD5 | 346e98d1c184d24be56a63481cefd8fa |
|
BLAKE2b-256 | ce2d8e5060db48372eee25b452d066c7b64e166338563b3b1b7428ebfeb16729 |
Hashes for naludaq_rs-0.2.3-cp37-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | cfe60452c993badd39452460d0eb2f7ec9e21fc4794836616d5479a37fc4a4a0 |
|
MD5 | 581a225871a16480d2863982e38794cf |
|
BLAKE2b-256 | e5718cd26067e89d64130c190262dcbfd9b24d828890ed67f3f025e84b0e80f6 |
Hashes for naludaq_rs-0.2.3-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1d44bc511b756d44a2152c12961c97765f9a5673f728a3de6adb3062b7806a58 |
|
MD5 | ff1b86463d82b9c2263905f941c1f82f |
|
BLAKE2b-256 | b3a954daee9ca11e8092bcdbf92a0c2f948c6d89a46bfb728da77dae38e049c5 |