[package] name = "essence" authors = ["jay3332"] version = "0.5.0" edition = "2021" description = "Essential models and database logic for the Adapt chat platform." homepage = "https://adapt.chat" license = "AGPL-3.0" repository = "https://github.com/AdaptChat/essence" readme = "README.md" keywords = ["adapt", "adapt-chat"] # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [dependencies] async-trait = { version = "0.1", optional = true } argon2-async = { version = "0.2", optional = true } base64 = { version = "0.20", optional = true } bincode = { version = "2.0.0-rc", features = ["serde"], optional = true } bitflags = "1.3.2" chrono = { version = "0.4.23", features = ["serde"] } itertools = { version = "0.10", optional = true } ring = { version = "0.16.20", optional = true } serde = { version = "1.0", features = ["derive"] } serde_json = { version = "1.0", optional = true } tokio = { version = "1", features = ["sync"], default-features = false, optional = true } [dependencies.sqlx] version = "0.6" features = ["postgres", "macros", "offline", "runtime-tokio-rustls", "chrono", "json"] optional = true [dependencies.utoipa] version = "3" features = ["chrono"] optional = true [features] default = ["snowflakes"] auth = ["snowflakes", "dep:argon2-async", "dep:ring", "token-parsing"] client = [] db = ["dep:async-trait", "dep:itertools", "dep:sqlx", "dep:tokio", "snowflakes", "serde_json"] snowflakes = [] token-parsing = ["dep:base64", "snowflakes"] webserver = ["auth", "bincode", "db", "utoipa", "utoipa/axum_extras", "utoipa/yaml"]