[package]
edition = "2024"
name = "better-auth"
version = "0.4.0"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "The most comprehensive authentication framework for Rust"
readme = "README.md"
license = "MIT OR Apache-2.0"
repository = "https://github.com/better-auth-rs/better-auth-rs"
resolver = "2"
[features]
axum = [
"dep:axum",
"dep:tower",
"dep:url",
]
default = []
derive = ["better-auth-core/derive"]
redis-cache = ["dep:redis"]
sqlx-postgres = [
"dep:sqlx",
"better-auth-core/sqlx-postgres",
]
[lib]
name = "better_auth"
path = "src/lib.rs"
[[example]]
name = "axum_server"
path = "examples/axum_server.rs"
required-features = ["axum"]
[[example]]
name = "basic_usage"
path = "examples/basic_usage.rs"
[[example]]
name = "custom_entities"
path = "examples/custom_entities.rs"
required-features = ["derive"]
[[example]]
name = "postgres_usage"
path = "examples/postgres_usage.rs"
required-features = ["sqlx-postgres"]
[[test]]
name = "axum_integration_tests"
path = "tests/axum_integration_tests.rs"
[[test]]
name = "compatibility_tests"
path = "tests/compatibility_tests.rs"
[[test]]
name = "derive_tests"
path = "tests/derive_tests.rs"
[[test]]
name = "integration_tests"
path = "tests/integration_tests.rs"
[dependencies.argon2]
version = "0.5"
[dependencies.async-trait]
version = "0.1"
[dependencies.axum]
version = "0.8"
optional = true
[dependencies.base64]
version = "0.22"
[dependencies.better-auth-api]
version = "0.4.0"
[dependencies.better-auth-core]
version = "0.4.0"
[dependencies.chrono]
version = "0.4"
features = ["serde"]
[dependencies.jsonwebtoken]
version = "9"
[dependencies.rand]
version = "0.8"
[dependencies.redis]
version = "0.27"
optional = true
[dependencies.serde]
version = "1.0"
features = ["derive"]
[dependencies.serde_json]
version = "1.0"
[dependencies.sqlx]
version = "0.8"
features = [
"runtime-tokio-rustls",
"postgres",
"chrono",
"uuid",
"json",
]
optional = true
[dependencies.thiserror]
version = "2.0"
[dependencies.tokio]
version = "1.0"
features = ["full"]
[dependencies.tower]
version = "0.5"
optional = true
[dependencies.url]
version = "2"
optional = true
[dependencies.uuid]
version = "1.18"
features = [
"v4",
"v7",
"serde",
]
[dev-dependencies.serde_yaml]
version = "0.9"
[dev-dependencies.tokio]
version = "1.0"
features = [
"full",
"full",
"test-util",
]
[dev-dependencies.tower-http]
version = "0.6"
features = ["cors"]
[dev-dependencies.tracing-subscriber]
version = "0.3"
features = ["env-filter"]
[profile.ci]
opt-level = 2
lto = "thin"
codegen-units = 16
inherits = "release"
[profile.release]
opt-level = 3
lto = "fat"
codegen-units = 1
debug = 0
panic = "abort"
incremental = false
strip = true