[package]
edition = "2024"
rust-version = "1.88"
name = "blazingly"
version = "0.2.1"
build = false
publish = true
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Facade crate re-exporting the Blazingly framework: routing, extraction, validation, dependency injection, OpenAPI, and MCP"
homepage = "https://github.com/sergii-ziborov/blazingly"
readme = "README.md"
keywords = [
"framework",
"http",
"api",
"openapi",
"mcp",
]
categories = [
"web-programming::http-server",
"web-programming",
"asynchronous",
"development-tools",
]
license = "MIT"
repository = "https://github.com/sergii-ziborov/blazingly"
[package.metadata.docs.rs]
all-features = true
[features]
database = ["dep:blazingly-database"]
default = [
"deploy",
"docs",
"mcp",
"middleware",
"observability",
"openapi",
"realtime",
"security",
"validation",
]
deploy = ["dep:blazingly-deploy"]
docs = ["dep:blazingly-docs"]
mcp = ["dep:blazingly-mcp"]
mcp-stdio = [
"mcp",
"dep:blazingly-mcp-stdio",
]
middleware = ["dep:blazingly-middleware"]
native = ["dep:blazingly-native"]
native-http2 = [
"native",
"blazingly-native/http2",
]
native-tls = [
"native",
"blazingly-native/tls",
]
observability = ["dep:blazingly-observability"]
observability-otel = [
"observability",
"blazingly-observability/otel",
]
openapi = ["dep:blazingly-openapi"]
queue = ["dep:blazingly-queue"]
realtime = ["dep:blazingly-realtime"]
security = ["dep:blazingly-security"]
templates = ["dep:blazingly-templates"]
validation = [
"dep:blazingly-validation",
"blazingly-executor/validation",
"blazingly-docs?/validation",
"blazingly-mcp?/validation",
"blazingly-openapi?/validation",
]
[lib]
name = "blazingly"
path = "src/lib.rs"
[[example]]
name = "mcp-stdio"
path = "examples/mcp-stdio.rs"
required-features = ["mcp-stdio"]
[[test]]
name = "blocking_pool"
path = "tests/blocking_pool.rs"
[[test]]
name = "borrowed_views"
path = "tests/borrowed_views.rs"
[[test]]
name = "custom_extractors"
path = "tests/custom_extractors.rs"
[[test]]
name = "di_overrides"
path = "tests/di_overrides.rs"
[[test]]
name = "ecosystem"
path = "tests/ecosystem.rs"
[[test]]
name = "executor_hooks"
path = "tests/executor_hooks.rs"
[[test]]
name = "http_streaming"
path = "tests/http_streaming.rs"
[[test]]
name = "http_surface"
path = "tests/http_surface.rs"
[[test]]
name = "invocation_control"
path = "tests/invocation_control.rs"
[[test]]
name = "json_oracle"
path = "tests/json_oracle.rs"
[[test]]
name = "lifespan"
path = "tests/lifespan.rs"
[[test]]
name = "macro_surface"
path = "tests/macro_surface.rs"
[[test]]
name = "mcp_extended"
path = "tests/mcp_extended.rs"
[[test]]
name = "middleware_security"
path = "tests/middleware_security.rs"
[[test]]
name = "model_ergonomics"
path = "tests/model_ergonomics.rs"
[[test]]
name = "native_adapter"
path = "tests/native_adapter.rs"
[[test]]
name = "observability"
path = "tests/observability.rs"
[[test]]
name = "openapi_fidelity"
path = "tests/openapi_fidelity.rs"
[[test]]
name = "openapi_mount"
path = "tests/openapi_mount.rs"
[[test]]
name = "operation_model"
path = "tests/operation_model.rs"
[[test]]
name = "plugin_mount"
path = "tests/plugin_mount.rs"
[[test]]
name = "realtime"
path = "tests/realtime.rs"
[[test]]
name = "request_providers"
path = "tests/request_providers.rs"
[[test]]
name = "streaming_compression"
path = "tests/streaming_compression.rs"
[[test]]
name = "streaming_upload"
path = "tests/streaming_upload.rs"
[[test]]
name = "sync_handler_path"
path = "tests/sync_handler_path.rs"
[[test]]
name = "validation"
path = "tests/validation.rs"
[dependencies.blazingly-contract]
version = "0.4.1"
[dependencies.blazingly-core]
version = "0.2.1"
[dependencies.blazingly-database]
version = "0.2.1"
optional = true
[dependencies.blazingly-deploy]
version = "0.2.1"
optional = true
[dependencies.blazingly-di]
version = "0.2.1"
[dependencies.blazingly-docs]
version = "0.2.1"
optional = true
[dependencies.blazingly-executor]
version = "0.2.1"
[dependencies.blazingly-http]
version = "0.2.1"
[dependencies.blazingly-json]
version = "0.1.2"
[dependencies.blazingly-macros]
version = "0.2.1"
[dependencies.blazingly-mcp]
version = "0.2.1"
optional = true
[dependencies.blazingly-mcp-stdio]
version = "0.2.1"
optional = true
[dependencies.blazingly-middleware]
version = "0.2.1"
optional = true
[dependencies.blazingly-native]
version = "0.2.1"
optional = true
[dependencies.blazingly-observability]
version = "0.2.1"
optional = true
[dependencies.blazingly-openapi]
version = "0.2.1"
optional = true
[dependencies.blazingly-queue]
version = "0.2.1"
optional = true
[dependencies.blazingly-realtime]
version = "0.2.1"
optional = true
[dependencies.blazingly-security]
version = "0.2.1"
optional = true
[dependencies.blazingly-templates]
version = "0.2.1"
optional = true
[dependencies.blazingly-validation]
version = "0.2.1"
optional = true
[dependencies.serde]
version = "1.0.229"
features = [
"alloc",
"derive",
"std",
]
default-features = false
[dev-dependencies.flate2]
version = "1"
[dev-dependencies.futures-lite]
version = "2"
[dev-dependencies.serde_json]
version = "1.0.151"
[dev-dependencies.shiguredo_http2]
version = "=2026.1.0-canary.6"
[lints.clippy.all]
level = "warn"
priority = -1
[lints.clippy.pedantic]
level = "warn"
priority = -1
[lints.rust]
unsafe_code = "forbid"