at protocol indexer with flexible filtering, xrpc queries, and a cursor-backed event stream, built on fjall
at-protocol
atproto
indexer
rust
fjall
1[package]
2name = "hydrant"
3version = "0.1.0"
4edition = "2024"
5
6[dependencies]
7tokio = { version = "1.0", features = ["full"] }
8
9tracing = "0.1"
10tracing-subscriber = { version = "0.3", features = ["env-filter"] }
11miette = { version = "7", features = ["fancy"] }
12
13serde = { version = "1.0", features = ["derive"] }
14serde_bytes = "0.11"
15serde_json = "1.0"
16rmp-serde = { git = "https://github.com/90-008/msgpack-rust.git" }
17
18fjall = "3.1"
19serde_ipld_dagcbor = "0.6"
20serde_urlencoded = "0.7"
21
22url = "2.5"
23smol_str = "0.3"
24futures = "0.3"
25reqwest = { version = "0.13.2", features = ["json", "rustls", "stream", "gzip", "brotli", "zstd", "http2"], default-features = false }
26axum = { version = "0.8.8", features = ["ws", "macros"] }
27tower-http = { version = "0.6.6", features = ["cors", "trace"] }
28
29jacquard-common = { git = "https://tangled.org/ptr.pet/jacquard", default-features = false, features = ["tracing", "std", "crypto"] }
30jacquard-api = { git = "https://tangled.org/ptr.pet/jacquard" }
31jacquard-identity = { git = "https://tangled.org/ptr.pet/jacquard", features = ["dns", "tracing"] }
32jacquard-repo = { git = "https://tangled.org/ptr.pet/jacquard" }
33jacquard-derive = { git = "https://tangled.org/ptr.pet/jacquard" }
34chrono = { version = "0.4.43", features = ["serde"] }
35humantime = "2.3.0"
36
37mimalloc = { version = "0.1", features = ["v3"] }
38hex = "0.4"
39scc = "3.6.6"
40data-encoding = "2.10.0"
41cid = "0.11.1"
42thiserror = "2.0.18"
43rand = "0.10.0"
44glob = "0.3"
45arc-swap = "1.8.2"
46rustls = { version = "0.23", features = ["aws-lc-rs"] }
47tokio-tungstenite = { version = "0.28.0", features = ["rustls-tls-native-roots"] }
48multibase = "0.9.2"
49lsm-tree = "3.1.0"
50
51[dev-dependencies]
52tempfile = "3.26.0"
53
54[profile.dev]
55opt-level = 2