Skip to main content

Crate type_bridge_server

Crate type_bridge_server 

Source
Expand description

§type-bridge-server

Transport-agnostic query pipeline for TypeDB with composable interceptors.

This crate provides both a library and a standalone binary for executing TypeQL queries through a structured pipeline: validate → intercept → compile → execute → intercept.

§Feature flags

FeatureDefaultDescription
typedbyesTypeDB backend via TypeDBClient
axum-transportyesHTTP server with /query, /query/validate, /health, /schema endpoints
v2-queryyesAdditive prepared /v2/capabilities and /v2/query routes

Disable defaults with --no-default-features to use the core pipeline as a library without any transport or backend.

§Library usage

This example is ignored because the executor and interceptor values are application-defined extension points rather than crate-provided fixtures.

ⓘ
use type_bridge_server::pipeline::PipelineBuilder;
use type_bridge_server::schema_source::InMemorySchemaSource;

let pipeline = PipelineBuilder::new(my_executor)
    .with_schema_source(InMemorySchemaSource::new(tql_schema))
    .with_default_database("my_db")
    .with_interceptor(my_audit_log)
    .build()?;

let output = pipeline.execute_query(input).await?;

§Extension points

  • QueryExecutor — implement to use a non-TypeDB backend or a mock.
  • Interceptor — implement to add cross-cutting concerns (audit, auth, rate limiting).
  • SchemaSource — implement to load TypeQL schemas from custom sources.

Modules§

config
Standalone server configuration and bounded material loading.
error
Errors returned by the query pipeline and transports.
executor
Provider-independent query execution interfaces.
interceptor
Request, response, audit, and CRUD interceptor APIs.
pipeline
The transport-independent query execution pipeline.
schema_source
Schema-loading interfaces and built-in sources.
transport
Axum HTTP request and response transports.
typedb
TypeDB-backed query executor implementation.