[package]
name = "rapina"
version = "0.1.0-alpha.3"
edition = "2024"
description = "A fast, type-safe web framework for Rust inspired by FastAPI"
license = "MIT"
repository = "https://github.com/arferreira/rapina"
documentation = "https://docs.rs/rapina"
readme = "../README.md"
keywords = ["web", "framework", "http", "async", "api"]
categories = ["web-programming::http-server", "asynchronous"]

[dependencies]
# Async
tokio = { version = "1.49.0", features = ["full"] }

# HTTP server
hyper = { version = "1.8.1", features = ["server", "http1", "http2"] }
hyper-util = { version = "0.1.19", features = ["tokio", "client-legacy", "http1"] }
http = "1.4.0"
http-body-util = "0.1.3"
bytes = "1.11.0"

# Serialization
serde = { version = "1.0.228", features = ["derive"] }
serde_json = "1.0.149"
serde_urlencoded = "0.7"

# Validation
validator = { version = "0.20.0", features = ["derive"] }

# Observability
tracing = "0.1"
tracing-subscriber = { version = "0.3", features = ["json", "env-filter"] }

uuid = { version = "1", features = ["v4"] }

# Our macros
rapina-macros = { version = "0.1.0-alpha.3", path = "../rapina-macros/" }
