4 releases (breaking)
new 0.4.0 | Mar 12, 2025 |
---|---|
0.3.0 | Dec 19, 2024 |
0.2.0 | Dec 4, 2024 |
0.1.0 | Oct 16, 2024 |
#335 in Cryptography
1,698 downloads per month
Used in 2 crates
(via aranya-daemon)
390KB
8K
SLoC
Aranya Core
Aranya is lovingly crafted and supported by SpiderOak. Aranya is licensed under the AGPL- if you want to use it commercially, drop us a line!
What's Contained In This Repo
This repo is a cargo workspace for the Rust implementation for the core of the Aranya platform. This is a library that includes the storage module (for DAG and FactDB), crypto module (with default crypto engine automatically selected), sync engine, and runtime client (including policy VM).
It also includes Aranya Fast Channels to enable encrypted channels between 2 peers allowing either unidirectional or bidirectional communication.
More documentation on Aranya is provided here: Aranya Documentation.
Get Started
Aranya Core is written in Rust. Additionally, this repo contains tools for our C API wrappers. The full list of dependencies is below.
Dependencies
- Rust (Find version info in the rust-toolchain.toml)
NOTE: When building with Rust, rustup will automatically download and use the version specified by the
rust-toolchain.toml
.
- cargo-make (v0.37.23)
NOTE: we have tested using the specified versions above. Other versions of these tools may also work.
Install cargo-make
This repo uses cargo-make
as a task runner.
cargo install cargo-make --locked
Usage
cargo-make
can be used as a cargo plugin via cargo make <task>
or directly as makers <task>
.
Note that you must be in the root directory of the repo to run tasks. To view all tasks, run cargo make
or see Makefile.toml
.
# lists all tasks
makers
# auto-format files
makers fmt
# run all unit tests
makers unit-tests
# run correctness checks
makers correctness
Contributing
Find information on contributing to the Aranya project in
CONTRIBUTING.md
.
Maintainers
This repository is maintained by software engineers employed at SpiderOak
lib.rs
:
The perspective
FFI module.
Dependencies
~18MB
~311K SLoC