fints-rs 0.1.0

Native Rust FinTS 3.0 PinTan client for German online banking
Documentation
[package]
name = "fints-rs"
version = "0.1.0"
edition = "2021"
description = "Native Rust FinTS 3.0 PinTan client for German online banking"
license = "MIT"
repository = "https://github.com/floffel/fints"
keywords = ["fints", "hbci", "banking", "germany", "pintan"]
categories = ["finance"]

[lib]
name = "fints"
path = "src/lib.rs"

[dependencies]
reqwest = { version = "0.12", features = ["rustls-tls"], default-features = false }
base64 = "0.22"
encoding_rs = "0.8"
mt940 = "1.1"
chrono = { version = "0.4", features = ["serde"] }
rust_decimal = { version = "1.35", features = ["serde-with-str"] }
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
thiserror = "2"
tracing = "0.1"
rand = "0.9"
tokio = { version = "1", features = ["full"] }
axum = { version = "0.8", optional = true }
clap = { version = "4", features = ["derive"], optional = true }
rpassword = { version = "7", optional = true }
comfy-table = { version = "7", optional = true }
csv = { version = "1", optional = true }
tracing-subscriber = { version = "0.3", features = ["env-filter"], optional = true }
flate2 = { version = "1", optional = true }

[features]
default = []
cli = ["dep:clap", "dep:rpassword", "dep:comfy-table", "dep:csv", "dep:tracing-subscriber", "dep:flate2"]
server = ["dep:axum", "dep:clap", "dep:tracing-subscriber"]

[[bin]]
name = "fints-server"
path = "src/bin/server.rs"
required-features = ["server"]

[[bin]]
name = "fints-client"
path = "src/bin/client.rs"
required-features = ["cli"]

[dev-dependencies]
tokio = { version = "1", features = ["full"] }
chrono = "0.4"
proptest = "1"
assert_cmd = "2"
predicates = "3"
tempfile = "3"