interface GrpcPluginOptions
Since 0.3.0

Options for the gRPC plugin.

Properties

optional
basePath: string

Base path under which gRPC/Connect services are served. Defaults to the root ('/', M70i). A gRPC-family client derives its path from the fully-qualified method name alone and has no prefix option, so a prefixed default puts every procedure at an address no such client asks for. At the root, unknown paths fall through to Hono and only registered procedure paths are claimed. This makes Connect and gRPC-Web reachable at their natural addresses; native application/grpc reaches the server too but is deliberately refused with a Trailers-Only UNIMPLEMENTED. Pass '/grpc' to restore the pre-M70i prefix.

optional
reflection: boolean

Whether to enable server reflection (v1). Defaults to true.

optional
health: boolean

Whether to enable the gRPC Health v1 service (bridged to M20 health plugin). Defaults to true.

optional
services: Array<{ definition: unknown; implementation?: unknown; }>

Initial services to register. Each entry contains a service definition and an optional implementation object.

optional
connectModule: ConnectRuntime

Injected Connect runtime module(s). When provided, avoids the lazy import. Used by tests to avoid network dependencies.

optional
interceptors: readonly unknown[]

Application-supplied Connect interceptors, threaded into createConnectRouter({ interceptors }) (M70f ยง3.7). The plugin's built-in handler-error logging wraps each application service's implementation (innermost), so a handler throw is logged before an application interceptor observes it. Absent: no application interceptors are installed.

Usage

import { type GrpcPluginOptions } from "grpc-plugin/src/index.ts";