[package]
name = "darkfi-sdk"
version = "0.5.0"
homepage = "https://dark.fi"
description = "SDK used for developing smart contracts on DarkFi"
authors = ["Dyne.org foundation <foundation@dyne.org>"]
repository = "https://codeberg.org/darkrenaissance/darkfi"
license = "AGPL-3.0-only"
edition = "2021"

[lib]
doctest = false

[features]
default = []
async = ["darkfi-serial/async"]
wasm = []

[dependencies]
# Error handling
thiserror = "2.0.17"

# Serialization
darkfi-serial = {version = "0.5.1", features = ["crypto"]}

# Encoding
bs58 = {version = "0.5.1", features = ["check"]}
num = "0.4.3"
sha2 = "0.10.9"

# Cryptography
blake2b_simd = "1.0.3"
blake3 = "1.8.2"
chacha20poly1305 = "0.10.1"
halo2_gadgets = "0.4.0"
bridgetree = "0.7.0"
num-bigint = "0.4.6"
num-traits = "0.2.19"
pasta_curves = "0.5.1"
rand_core = "0.6.4"
rand = "0.8.5"

# Misc
lazy_static = "1.5.0"
subtle = "2.6.1"
hashbrown = "0.16.1"

# Storage
sled-overlay = "0.1.14"

[dev-dependencies]
halo2_proofs = {version = "0.3.2", features = ["dev-graph", "sanity-checks"]}
halo2_gadgets = {version = "0.4.0", features = ["test-dependencies"]}

[lints]
workspace = true
