very fast at protocol indexer with flexible filtering, xrpc queries, cursor-backed event stream, and more, built on fjall
rust
fjall
at-protocol
atproto
indexer
1/// hydrant configuration
2pub mod config;
3/// hydrant main api, includes the Hydrant type for programmatic control.
4pub mod control;
5pub(crate) mod filter;
6#[cfg(feature = "relay")]
7pub(crate) mod pds_daily_limit;
8pub(crate) mod pds_meta;
9pub mod types;
10
11/// dependencies hydrant uses in it's public api
12pub mod deps {
13 pub use futures;
14 pub use jacquard_common as jacquard;
15 pub use rustls;
16 pub use smol_str;
17}
18
19#[cfg(all(
20 feature = "relay",
21 any(feature = "indexer", feature = "indexer_stream", feature = "backlinks")
22))]
23compile_error!("can't be relay and indexer at the same time");
24#[cfg(all(
25 not(feature = "indexer"),
26 any(feature = "indexer_stream", feature = "backlinks")
27))]
28compile_error!("indexer dependent features (stream, backlinks) without indexer can't be enabled");
29
30pub(crate) mod api;
31#[cfg(feature = "indexer")]
32pub(crate) mod backfill;
33#[cfg(feature = "backlinks")]
34pub mod backlinks;
35#[cfg(feature = "indexer")]
36pub(crate) mod crawler;
37pub(crate) mod db;
38pub(crate) mod ingest;
39#[cfg(feature = "indexer")]
40pub(crate) mod ops;
41pub(crate) mod patch;
42pub mod resolver;
43pub(crate) mod state;
44pub(crate) mod util;
45
46pub use filter::FilterMode;