[package]
edition = "2021"
rust-version = "1.86"
name = "pulsate"
version = "0.2.2"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Pulsate — a reverse-proxy gateway in one binary: TLS, caching, WAF, observability, admin API, and WASM plugins."
homepage = "https://github.com/squaretick/pulsate"
documentation = "https://docs.rs/pulsate"
readme = "README.md"
keywords = [
"gateway",
"reverse-proxy",
"http",
"proxy",
"tls",
]
categories = [
"network-programming",
"web-programming::http-server",
"command-line-utilities",
]
license = "Apache-2.0"
repository = "https://github.com/squaretick/pulsate"
[package.metadata.deb]
maintainer = "NAHSV Healthlinko <webmaster@squaretick.dev>"
copyright = "2026, NAHSV Healthlinko Private Limited"
section = "net"
priority = "optional"
extended-description = "Pulsate is a reverse-proxy gateway: automatic TLS, caching, a WAF, rate limiting, observability, a loopback admin API and dashboard, and a sandboxed WASM plugin host — in a single static binary configured by one file."
assets = [
[
"target/release/pulsate",
"usr/bin/",
"755",
],
[
"packaging/pulsate.flow",
"etc/pulsate/pulsate.flow",
"644",
],
[
"packaging/systemd/pulsate.service",
"lib/systemd/system/pulsate.service",
"644",
],
[
"README.md",
"usr/share/doc/pulsate/README.md",
"644",
],
]
conf-files = ["/etc/pulsate/pulsate.flow"]
[[package.metadata.generate-rpm.assets]]
source = "target/release/pulsate"
dest = "/usr/bin/pulsate"
mode = "755"
[[package.metadata.generate-rpm.assets]]
source = "packaging/pulsate.flow"
dest = "/etc/pulsate/pulsate.flow"
mode = "644"
config = true
[[package.metadata.generate-rpm.assets]]
source = "packaging/systemd/pulsate.service"
dest = "/lib/systemd/system/pulsate.service"
mode = "644"
[[package.metadata.generate-rpm.assets]]
source = "README.md"
dest = "/usr/share/doc/pulsate/README.md"
mode = "644"
doc = true
[package.metadata.binstall]
pkg-url = "{ repo }/releases/download/v{ version }/pulsate-v{ version }-{ target }.{ archive-suffix }"
pkg-fmt = "tgz"
bin-dir = "{ bin }{ binary-ext }"
[package.metadata.binstall.overrides.x86_64-pc-windows-msvc]
pkg-fmt = "zip"
[lib]
name = "pulsate"
path = "src/lib.rs"
[[bin]]
name = "pulsate"
path = "src/main.rs"
[dependencies.anyhow]
version = "1"
[dependencies.clap]
version = "4"
features = ["derive"]
[dependencies.pulsate-cli]
version = "0.2.2"
[dependencies.pulsate-core]
version = "0.2.2"
[dependencies.pulsate-rt]
version = "0.2.2"
[lints.clippy]
doc_markdown = "allow"
missing_errors_doc = "allow"
missing_panics_doc = "allow"
module_name_repetitions = "allow"
[lints.clippy.all]
level = "warn"
priority = -1
[lints.clippy.pedantic]
level = "warn"
priority = -1
[lints.rust]
missing_docs = "warn"
unsafe_code = "forbid"