Skip to main content

reifydb_sub_server_http/
lib.rs

1// SPDX-License-Identifier: Apache-2.0
2// Copyright (c) 2026 ReifyDB
3
4//! HTTP/JSON server hosted on top of Axum. Exposes the request/response and subscribe-via-streaming endpoints in
5//! a transport that is friendlier than gRPC for browsers, scripting languages, and tooling that does not want to
6//! depend on protobuf. Routing, handlers, and per-route state sit on top of `sub-server`'s shared dispatch.
7//!
8//! JSON payloads come from `wire-format`'s JSON encoder; the HTTP path is the canonical place RBCF gets rendered
9//! into something a generic client can consume. Anything that needs raw RBCF should use the gRPC or WebSocket
10//! transports instead.
11
12#![cfg_attr(not(debug_assertions), deny(clippy::disallowed_methods))]
13#![cfg_attr(debug_assertions, warn(clippy::disallowed_methods))]
14#![cfg_attr(not(debug_assertions), deny(warnings))]
15#![allow(clippy::tabs_in_doc_comments)]
16
17#[cfg(not(reifydb_single_threaded))]
18pub mod error;
19#[cfg(not(reifydb_single_threaded))]
20pub mod factory;
21#[cfg(not(reifydb_single_threaded))]
22pub mod handlers;
23#[cfg(not(reifydb_single_threaded))]
24pub mod routes;
25#[cfg(not(reifydb_single_threaded))]
26pub mod state;
27#[cfg(not(reifydb_single_threaded))]
28pub mod subsystem;