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.2-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 15a3cb4c13b5a6b7bc44c414272c7a66f80f2303ff7561178b514c276757d708 |
|
MD5 | 2886c9b54de931886cbf4af50dced6b0 |
|
BLAKE2b-256 | a4df159def139b6c81c0d804e186d4af137fd87c4f7fc50869e99f76f1f831c8 |
Hashes for naludaq_rs-0.2.2-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2278023542e505d4f11a2501945feff0c337722015c54d43e258e610ecbbe157 |
|
MD5 | b2f96f01a5423c3499da6894f5e9f1c2 |
|
BLAKE2b-256 | 7d9f253a2abc555f573512919d80da506ad4730fa41a66f2043183fb346cd9a9 |
Hashes for naludaq_rs-0.2.2-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e8adcd4fc19b1333c6b95bc46ece93676f325c524775801636b2b338580c3527 |
|
MD5 | 3757169211890de886302068561988e2 |
|
BLAKE2b-256 | 159cd52dd077cc9bd0b4d516bd83092a42459c31987d1ee5c77a7fb1bfccbb5b |
Hashes for naludaq_rs-0.2.2-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | cb94230dbd76807580bff7e9970b3ada30f246cdce1441e0ff6bc5afbf2e90ff |
|
MD5 | f676bbc264b0cfeef67d13291886caf8 |
|
BLAKE2b-256 | 5365a017d122f861e0f6dc861db11eb8dc70b6b3e4595b5c4759bbb5340aecf8 |
Hashes for naludaq_rs-0.2.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b5612e6d0472648df0ef70dc4c91fca6e0a080a2959505d3492238208f7fae9d |
|
MD5 | e7532ad5f4c7907c0469c1ab3a995318 |
|
BLAKE2b-256 | 6f7cb8ddcc3b34f82ef40ca3da2ea4cc2a28b7f3999a5f591b5f10ecebe6e534 |
Hashes for naludaq_rs-0.2.2-cp311-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f8bbbf60061c8921c1b2d45e2c7bd8d128a49dcd5b5b528008050d87500b9aea |
|
MD5 | 685f5d6097e274729b18e233d9e5fe4c |
|
BLAKE2b-256 | f42f7f7fd591df10dced1d97db9dd87310b8dd68ea00c9c369083201ffbf2efa |
Hashes for naludaq_rs-0.2.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c7e7f37968fbc5946400dda0bbc9b82464b5992144d6bfd60346b6fe9c01df7d |
|
MD5 | 7cc99aae5b3fbc77d83a55bb55d69223 |
|
BLAKE2b-256 | ab751b849b00cefb8bc0cf97c18b3456a74f20b84251352caf4c347f578e37fd |
Hashes for naludaq_rs-0.2.2-cp310-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 742ff57bbfe9c377d2a111f01981ef4f842d5a04e25fd2b024945e225104c946 |
|
MD5 | e63e2b7027d2a5f7d7d9158abdc12dbe |
|
BLAKE2b-256 | 0241fc31c3f436dacc3616575cb24e264afa25c1015b19bf677b260e53cffa99 |
Hashes for naludaq_rs-0.2.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6c6845aef38b2ac29aba0f686cda9b9d73ee5dbcb7cf8e16fac5d43273f5be8c |
|
MD5 | 981e8acae8acd9aefa6434abc8ee1a1f |
|
BLAKE2b-256 | 2881b8150ff5f01275d79ca911a768a7854d6dffe1448952327b5924b621e1ad |
Hashes for naludaq_rs-0.2.2-cp39-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 522abe068a1a70ed6f975af0643dcfcbd7b83fb1a064371f901c5e4297227cc4 |
|
MD5 | b2580b31473853e755e9e74792f52392 |
|
BLAKE2b-256 | e8d5e9fa7b3235965d7667581aac2ba6f0969282550e66f346daa14769ae7a65 |
Hashes for naludaq_rs-0.2.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 07b4211b4ce305dd29db5c7d56e739634bcafa7524a32ac23cbebf5154189d49 |
|
MD5 | a1a808637bc686bec673e89aa8be7809 |
|
BLAKE2b-256 | f067585719c3daf1bfb52b948498e33eb94ad560be5dcb5ca5ecfb394c33bf6f |
Hashes for naludaq_rs-0.2.2-cp38-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 45f3ca4a0e92b9d67c0da5f8db32c0e2f5b05c1de261f3a7f61e5f58fe92eca9 |
|
MD5 | 8367e8e6f427a0632ffd376a5f576291 |
|
BLAKE2b-256 | bf5203de03129a40a077b20db572dc2dd8fa6fe78575ef24001ea454a5b80a62 |
Hashes for naludaq_rs-0.2.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6d931f96ca9b8952fca5befb1bb50479d2b3565dcd841fdb0cdd09170836c14a |
|
MD5 | 43ad9f2631a37615f8c3298e5a97a594 |
|
BLAKE2b-256 | dc0ce1b9b91af82328c0957cd4ad4611afa5c6172350a489351c5eb94fb7e8ef |
Hashes for naludaq_rs-0.2.2-cp37-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ae1b47bb9116d9e8d80e1bdda2defc06ea6b6c63fb24010a723a1cfac41ad0cb |
|
MD5 | 1eac3d23132aa57f9947fb99e28e33f6 |
|
BLAKE2b-256 | 753ab1e4d34651a14634a1a871568d43ec5fe13e33c0bd425421d67876f44c33 |
Hashes for naludaq_rs-0.2.2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 57d868525f50194ee2f9fc7dafc75e0f80dd8ca799be3ed53f688e1f657bdc08 |
|
MD5 | 0a6372c5a9165430a7f1a98f8fe7a90a |
|
BLAKE2b-256 | 94bf6c5d5e3c17ef62a6868f4326133a83090c4414be75aee4f5648d032a8d14 |