Files
astarcup-backend/Cargo.toml
2026-02-12 17:43:10 +08:00

68 lines
1.7 KiB
TOML

[package]
name = "astracup-backend"
version = "0.0.1"
edition = "2024"
authors = ["AstraCup Team"]
description = "AstraCup tournament management backend"
license = "MIT"
repository = "https://github.com/AECBanana/astracup-web"
[dependencies]
# Web framework
axum = { version = "0.8.8", features = ["macros"] }
tokio = { version = "1.49", features = ["full"] }
tower = "0.5.3"
tower-http = { version = "0.6.8", features = ["cors", "trace"] }
# Database
sea-orm = { version = "1.1.19", features = ["sqlx-mysql", "runtime-tokio-native-tls", "macros"] }
sqlx = { version = "0.8.6", features = ["mysql", "runtime-tokio-native-tls"] }
dotenv = "0.15"
# Serialization
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
# Authentication and security
jsonwebtoken = "10.3"
bcrypt = "0.18"
argon2 = "0.5"
rand = "0.10"
# HTTP client for OAuth
reqwest = { version = "0.13", features = ["json"] }
# Configuration
config = "0.15"
anyhow = "1.0"
thiserror = "2.0"
# Logging and tracing
tracing = "0.1"
tracing-subscriber = { version = "0.3", features = ["env-filter"] }
# Validation
validator = { version = "0.20", features = ["derive"] }
# Utilities
chrono = { version = "0.4", features = ["serde"] }
uuid = { version = "1.20", features = ["v4", "serde"] }
futures = "0.3"
axum-extra = { version = "0.12.5", features = ["typed-header"] }
utoipa = { version = "5.4.0", features = ["axum_extras"] }
utoipa-swagger-ui = { version = "9.0.2", features = ["axum"] }
[dev-dependencies]
# Testing
tokio = { version = "1.0", features = ["full"] }
reqwest = { version = "0.13", features = ["json"] }
mockall = "0.14"
[profile.dev]
opt-level = 0
debug = true
[profile.release]
opt-level = 3
lto = true
codegen-units = 1