[package]
name = "oculus"
version = "0.1.3"
edition = "2024"
description = "Unified telemetry system for monitoring and observability"
license = "MIT"
[lib]
name = "oculus"
path = "src/lib.rs"
[[bin]]
name = "oculus"
path = "src/main.rs"
[dependencies]
async-trait = "0.1"
tokio-cron-scheduler = "0.15"
cron = "0.15"
uuid = "1"
tokio = { version = "1", features = ["full"] }
sqlx = { version = "0.8", features = ["runtime-tokio", "sqlite"] }
axum = "0.7"
tower = "0.5"
tower-http = { version = "0.6", features = ["fs", "cors", "trace"] }
askama = "0.12"
askama_axum = "0.4"
serde = { version = "1", features = ["derive"] }
serde_json = "1"
serde_yaml = "0.9"
serde_json_path = "0.7"
chrono = { version = "0.4", features = ["serde"] }
thiserror = "2"
tracing = "0.1"
tracing-subscriber = { version = "0.3", features = ["env-filter"] }
strum = "0.26"
strum_macros = "0.26"
xxhash-rust = { version = "0.8.15", features = ["xxh64"] }
clap = { version = "4", features = ["derive", "env"] }
regex = "1"
surge-ping = "0.8"
rand = "0.9"
reqwest = { version = "0.12", default-features = false, features = ["rustls-tls"] }
humantime = "2"
humantime-serde = "1"
url = "2"
[dev-dependencies]
http-body-util = "0.1"
[dev-dependencies.reqwest]
version = "0.12"
default-features = false
features = ["rustls-tls", "json"]