[package]
edition = "2024"
rust-version = "1.88"
name = "enclavia"
version = "0.1.0"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Encrypted HTTP client SDK for the Enclavia enclave runtime: Noise tunnel over WebSocket with built-in attestation verification."
homepage = "https://enclavia.io"
documentation = "https://docs.rs/enclavia"
readme = "README.md"
keywords = [
"enclave",
"attestation",
"nitro",
"tee",
"https",
]
categories = [
"cryptography",
"network-programming",
"api-bindings",
]
license = "Apache-2.0 OR MIT"
repository = "https://github.com/EnclaviaIO/enclavia"
[features]
default = []
json = ["serde_json"]
[lib]
name = "enclavia"
path = "src/lib.rs"
[[example]]
name = "test_client"
path = "examples/test_client.rs"
[[test]]
name = "upgrade"
path = "tests/upgrade.rs"
[dependencies.chrono]
version = "0.4"
features = ["serde"]
[dependencies.ciborium]
version = "0.2"
[dependencies.enclavia-protocol]
version = "0.1.0"
default-features = false
[dependencies.httparse]
version = "1"
[dependencies.serde]
version = "1"
features = ["derive"]
[dependencies.serde_json]
version = "1"
optional = true
[dependencies.snow]
version = "0.9"
[dependencies.thiserror]
version = "2"
[dependencies.tracing]
version = "0.1"
[dependencies.url]
version = "2"
[dependencies.uuid]
version = "1"
features = [
"v4",
"serde",
]
[dev-dependencies.bytes]
version = "1"
[dev-dependencies.enclavia-protocol]
version = "0.1.0"
features = ["test-utils"]
[dev-dependencies.tokio]
version = "1"
features = [
"net",
"io-util",
"macros",
"rt-multi-thread",
"process",
"time",
"net",
"io-util",
"macros",
"rt-multi-thread",
"time",
"sync",
]
[dev-dependencies.tokio-tungstenite]
version = "0.26"
[target.'cfg(not(target_arch = "wasm32"))'.dependencies.futures-util]
version = "0.3"
[target.'cfg(not(target_arch = "wasm32"))'.dependencies.reqwest]
version = "0.12"
features = [
"rustls-tls",
"json",
]
default-features = false
[target.'cfg(not(target_arch = "wasm32"))'.dependencies.rustls]
version = "0.23"
features = [
"ring",
"std",
"tls12",
"logging",
]
default-features = false
[target.'cfg(not(target_arch = "wasm32"))'.dependencies.tokio]
version = "1"
features = [
"net",
"io-util",
"macros",
"rt-multi-thread",
"process",
"time",
"sync",
"macros",
"rt",
]
[target.'cfg(not(target_arch = "wasm32"))'.dependencies.tokio-tungstenite]
version = "0.26"
features = ["rustls-tls-webpki-roots"]
[target.'cfg(target_arch = "wasm32")'.dependencies.chrono]
version = "0.4"
features = ["wasmbind"]
[target.'cfg(target_arch = "wasm32")'.dependencies.getrandom]
version = "0.2"
features = ["js"]
[target.'cfg(target_arch = "wasm32")'.dependencies.js-sys]
version = "0.3"
[target.'cfg(target_arch = "wasm32")'.dependencies.reqwest]
version = "0.12"
features = ["json"]
default-features = false
[target.'cfg(target_arch = "wasm32")'.dependencies.tokio]
version = "1"
features = [
"sync",
"macros",
"io-util",
]
default-features = false
[target.'cfg(target_arch = "wasm32")'.dependencies.uuid]
version = "1"
features = ["js"]
[target.'cfg(target_arch = "wasm32")'.dependencies.wasm-bindgen]
version = "0.2"
[target.'cfg(target_arch = "wasm32")'.dependencies.wasm-bindgen-futures]
version = "0.4"
[target.'cfg(target_arch = "wasm32")'.dependencies.web-sys]
version = "0.3"
features = [
"WebSocket",
"MessageEvent",
"BinaryType",
"Event",
]