[package]
name = "sealwd"
version = "0.2.1"
edition = "2024"
authors = ["Thomas Zuyev"]
description = "Secure password and token management library for Rust, featuring hashing, encryption, and random generation."
repository = "https://codeberg.org/bolderaysky/sealwd"
documentation = "https://docs.rs/sealwd"
readme = "README.md"
keywords = ["secure", "secret", "password", "token", "auth"]
categories = ["cryptography", "security"]
license = "Apache-2.0"


[features]
default = ["encryption", "sqlx", "sqlx_postgres"]
sqlx = ["dep:sqlx"]
sqlx_postgres = ["sqlx?/postgres"]
serde = ["dep:serde", "serde-big-array"]
encryption = ["aes-gcm-siv", "chacha20poly1305", "aead"]

[dependencies]
argon2 = { version = "0.5.3", features = ["std"] }
base64 = "0.22.1"
blake3 = "1.8.3"
rand = { version = "0.9.2", features = ["os_rng"] }
thiserror = "2.0.17"
zeroize = { version = "1.8.2", features = ["zeroize_derive"] }
serde = { version = "1.0.228", optional = true, features = ["derive"] }
sqlx = { version = "0.8.6", optional = true, features = ["derive"] }
aes-gcm-siv = { version = "0.11.1", optional = true }
chacha20poly1305 = { version = "0.10.1", optional = true }
aead = { version = "0.5.2", optional = true }
serde-big-array = { version = "0.5.1", optional = true }
