Skip to content

Package Reference

All packages are fully documented on pkg.go.dev.

Installation

go get github.com/DaniDeer/go-codex@latest

Go 1.26+ required.

Quick import reference

What Import path
Core codecs github.com/DaniDeer/go-codex/codex
Format bridges (JSON, YAML, TOML, Gob, Binary) github.com/DaniDeer/go-codex/format
Built-in constraints github.com/DaniDeer/go-codex/validate
REST API builder github.com/DaniDeer/go-codex/api/rest
Event channel builder github.com/DaniDeer/go-codex/api/events
Request-reply route builder (ZMQ, MQTT 5, …) github.com/DaniDeer/go-codex/api/reqreply
MCP server builder github.com/DaniDeer/go-codex/api/mcp
net/http adapter (server + client) github.com/DaniDeer/go-codex/adapters/nethttp
chi adapter github.com/DaniDeer/go-codex/adapters/chi
Paho MQTT 3.1.1 adapter github.com/DaniDeer/go-codex/adapters/mqtt
MQTT 5.0 adapter github.com/DaniDeer/go-codex/adapters/mqtt5
ZeroMQ adapter (PUB/SUB, REQ/REP, DEALER/ROUTER) github.com/DaniDeer/go-codex/adapters/zeromq
SQL adapter (goose migrations + codec validation) github.com/DaniDeer/go-codex/adapters/sql
mark3labs/mcp-go adapter github.com/DaniDeer/go-codex/adapters/mcpgo
templ SSR format plug-in github.com/DaniDeer/go-codex/adapters/templ
OpenAPI 3.1 renderer github.com/DaniDeer/go-codex/render/openapi
AsyncAPI 3.0 renderer github.com/DaniDeer/go-codex/render/asyncapi/v3
AsyncAPI 2.6 renderer (frozen) github.com/DaniDeer/go-codex/render/asyncapi/v2
Forge pipelines (governed, batch) github.com/DaniDeer/go-codex/forge
Reactive stream pipelines github.com/DaniDeer/go-codex/stream
HTTP route descriptors github.com/DaniDeer/go-codex/route
Schema model github.com/DaniDeer/go-codex/schema
Observer interfaces github.com/DaniDeer/go-codex/stats

Core

Package Description pkg.go.dev
codex ⭐ Public API: Codec[T], primitives, struct, union, slice, constraints
validate Reusable constraints: Email, UUID, URL, ranges, MQTT topics, binary file formats (PNG, JPEG, PDF, ZIP…), …
format Format bridges: JSON, YAML, TOML, Gob, Binary (raw bytes), streaming, env vars, File I/O
schema Schema model (pure data, zero dependencies)
route HTTP route descriptors: Route, Param, SecurityScheme
stats Observer interfaces: ValidationObserver, Observer, PipelineObserver, SecurityObserver, FileObserver, SQLObserver, TraceObserver; NoopObserver + LoggingObserver + NewFanout

API builders (Layer 2)

Package Description pkg.go.dev
api/rest REST API builder: typed Decode/Encode + OpenAPI spec
api/events Event channel builder (PUB/SUB): typed Decode/Encode + AsyncAPI spec; works for MQTT 3, MQTT 5, ZMQ PUB/SUB
api/reqreply Request-reply route builder: NewRoute[Req,Resp](topic, codecs, ...RouteMeta) + Route.Register(b) *RouteHandle; mirrors api/rest for async transports (ZMQ REQ/REP, MQTT 5); generates AsyncAPI 3.0 with request-reply reply: block
api/mcp MCP server builder: Tools, Resources, Prompts

Adapters

Package Description pkg.go.dev
adapters/nethttp net/http: server (Handler, Register) + client (Call)
adapters/chi chi router adapter
adapters/mqtt Paho MQTT 3.1.1: SubscribeHandler + Publish; uses api/events channel declarations
adapters/mqtt5 MQTT 5.0 (paho.golang): Subscribe + Publish (PUB/SUB) + Serve + Call (request-reply); User Properties + ContentType auto-format; UserPropertyParam.WithCodec for property validation
adapters/zeromq ZeroMQ (CGO-free FramedSocket interface): Subscribe/Publish (PUB/SUB) + Serve/Call (REQ/REP) + ServeRouter/CallDealer (DEALER/ROUTER concurrent); accepts *reqreply.RouteHandle
adapters/sql SQL adapter: Validate[T] (codec-level row validation, wraps codec encode→decode round trip) + Migrator (goose migrations wrapper); RowValidationError, MigrationError — both slog.LogValuer
adapters/mcpgo mark3labs/mcp-go adapter
adapters/templ templ SSR format plug-in

Forge pipelines (Layer 3) and Reactive streams

Package Description pkg.go.dev
forge Governed KPI functions: NewFunction, Compose, Registry; synchronous batch computation with SHA-256 governance hashes and PipelineSpec YAML
stream Reactive stream pipelines over typed Go channels: From, FromCodec, Apply (wraps forge.Function per-item), Filter, Tap, MapErr, Merge, Tee, CombineLatest2, Buffer, Debounce, Throttle, Drain, Collect; Stream[T]{Values, Errors} explicit error channels

Renderers

Package Description pkg.go.dev
render/openapi OpenAPI 3.1 spec renderer
render/asyncapi/v3 AsyncAPI 3.0 spec renderer
render/asyncapi/v2 AsyncAPI 2.6 spec renderer (frozen)
render/jsonschema JSON Schema renderer (used by api/mcp)
render/pipeline Pipeline YAML renderer (used by forge)