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
Something went wrong. Try again.
Rust 89%
Nushell 10%
Go <1%
Shell <1%
Nix <1%
C <1%
Dockerfile <1%
Commits 592
[nix] export the ffi staticlib as packages.ffi
Signed-off-by: dawn <90008@klbr.net>
[ffi] make the go wrapper go-gettable
Signed-off-by: dawn <90008@klbr.net>
[db] report a poisoned database through run instead of exiting
Signed-off-by: dawn <90008@klbr.net>
[control] shut hydrant down cleanly
Signed-off-by: dawn <90008@klbr.net>
[ffi] add a C api and go wrapper for embedding hydrant
Signed-off-by: dawn <90008@klbr.net>
[api] serve management endpoints on unix binds only by default
Signed-off-by: dawn <90008@klbr.net>
[api] serve the api on unix sockets
Signed-off-by: dawn <90008@klbr.net>
[config] build config from any key lookup, not just the process env
Signed-off-by: dawn <90008@klbr.net>
[tests] deflake api_firehose_sources timing
Signed-off-by: dawn <dawn@tangled.org>
README.md
hydrant #
hydrant is an AT Protocol indexer built on the fjall database. it's built to
be flexible, supporting both full-network indexing and filtered indexing (e.g.,
by DID), allowing querying with XRPCs (not only com.atproto.*!), providing an
ordered event stream, etc. oh and it can also act as a relay!
you can see random.wisp.place (standalone binary using http API) or the statusphere example (hydrant-as-library) for examples on how to use hydrant.
for more information, look at the documentation.