godx-platform-sdk

module
v0.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 11, 2026 License: Apache-2.0

README

GodX service SDK

Shared Go kernel for GodX services.

This module holds cross-service infrastructure that must not belong to one runtime surface: config loading, event bus helpers, event payload registry, observability, server logs, store/migration helpers, secrets, slugs, i18n, HTTP cache helpers, pgcompat, project init templates, and static asset helpers.

It is intentionally kept in-repo for Plan #31. Plan #22 can later publish this as a standalone SDK repository without changing service call sites.

Directories

Path Synopsis
Package auth implements the shared SSO and session layer.
Package auth implements the shared SSO and session layer.
Package config loads runtime configuration from environment variables into a typed Config struct.
Package config loads runtime configuration from environment variables into a typed Config struct.
Package cursor provides opaque keyset-pagination cursor helpers and RFC 5988 Web Linking support for service APIs.
Package cursor provides opaque keyset-pagination cursor helpers and RFC 5988 Web Linking support for service APIs.
Package eventbus is admin's wrapper over NATS for in-process pub/sub and JetStream durable work queues.
Package eventbus is admin's wrapper over NATS for in-process pub/sub and JetStream durable work queues.
Package events is the canonical NATS subject + JetStream stream catalogue for famgia-admin (#13).
Package events is the canonical NATS subject + JetStream stream catalogue for famgia-admin (#13).
payloads
Package payloads holds the typed payloads carried by each subject declared in the parent events package.
Package payloads holds the typed payloads carried by each subject declared in the parent events package.
Package godxinit owns the canonical wiki page set bootstrapped by `init_project` (MCP) / `gx init` (CLI).
Package godxinit owns the canonical wiki page set bootstrapped by `init_project` (MCP) / `gx init` (CLI).
Package guardrail screens user-supplied prompts before they reach an LLM.
Package guardrail screens user-supplied prompts before they reach an LLM.
Package httpcache provides a thin RFC-7234-aware http.RoundTripper wrapper that combines:
Package httpcache provides a thin RFC-7234-aware http.RoundTripper wrapper that combines:
Package i18n centralizes the request-locale + sidecar-translation lookup helpers used by handlers/services.
Package i18n centralizes the request-locale + sidecar-translation lookup helpers used by handlers/services.
Package idempotency implements replay storage for Idempotency-Key requests.
Package idempotency implements replay storage for Idempotency-Key requests.
Package intersvc provides shared HTTP client primitives for GodX services.
Package intersvc provides shared HTTP client primitives for GodX services.
clients/agent
Package agent contains the typed inter-service client for agent-service.
Package agent contains the typed inter-service client for agent-service.
clients/audit
Package audit contains the typed inter-service client for audit-service.
Package audit contains the typed inter-service client for audit-service.
clients/console
Package console contains the typed inter-service client for console-service.
Package console contains the typed inter-service client for console-service.
clients/forge
Package forge contains the typed inter-service client for forge-service.
Package forge contains the typed inter-service client for forge-service.
clients/identity
Package identity contains the typed inter-service client for identity-service.
Package identity contains the typed inter-service client for identity-service.
clients/knowledge
Package knowledge contains the typed inter-service client for knowledge-service.
Package knowledge contains the typed inter-service client for knowledge-service.
clients/me
Package me contains the typed inter-service client for me-service.
Package me contains the typed inter-service client for me-service.
clients/media
Package media contains the typed inter-service client for media-service.
Package media contains the typed inter-service client for media-service.
clients/notify
Package notify contains the typed inter-service client for notify-service.
Package notify contains the typed inter-service client for notify-service.
clients/reporting
Package reporting contains the typed inter-service client for reporting-service.
Package reporting contains the typed inter-service client for reporting-service.
clients/sandbox
Package sandbox contains the typed inter-service client for sandbox.
Package sandbox contains the typed inter-service client for sandbox.
clients/schema-studio
Package schemastudio contains the typed inter-service client for schema-studio.
Package schemastudio contains the typed inter-service client for schema-studio.
clients/work
Package work contains the typed inter-service client for work-service.
Package work contains the typed inter-service client for work-service.
Package m2m implements OAuth 2.0 Token Exchange helpers for service calls.
Package m2m implements OAuth 2.0 Token Exchange helpers for service calls.
Package observability owns the platform's logging + metrics scaffolding (#13).
Package observability owns the platform's logging + metrics scaffolding (#13).
Package otel centralizes OpenTelemetry setup and propagation helpers for GodX services.
Package otel centralizes OpenTelemetry setup and propagation helpers for GodX services.
Package pgcompat registers a database/sql driver that lets the existing repository layer run against Postgres while Plan #15 removes MariaDB syntax.
Package pgcompat registers a database/sql driver that lets the existing repository layer run against Postgres while Plan #15 removes MariaDB syntax.
Package problem implements RFC 9457 Problem Details for HTTP APIs.
Package problem implements RFC 9457 Problem Details for HTTP APIs.
Package secret is the central crypto facade for at-rest secrets.
Package secret is the central crypto facade for at-rest secrets.
Package serverlog mirrors backend slog Error+Warn records into a MariaDB table so admins can debug from the UI without shelling into the host for `journalctl`.
Package serverlog mirrors backend slog Error+Warn records into a MariaDB table so admins can debug from the UI without shelling into the host for `journalctl`.
Package slug builds Outline-style URL slugs of the form
Package slug builds Outline-style URL slugs of the form
Package static optionally embeds the frontend build (frontend/dist) into the Go binary so the system can ship as a single file (#40).
Package static optionally embeds the frontend build (frontend/dist) into the Go binary so the system can ship as a single file (#40).
Package store opens and migrates the admin's MariaDB database that backs all persistent state (dev users, projects, assignments, wiki docs, plans, issues, agent sessions, domain pool, etc.).
Package store opens and migrates the admin's MariaDB database that backs all persistent state (dev users, projects, assignments, wiki docs, plans, issues, agent sessions, domain pool, etc.).
Package testing contains small shared helpers for service tests.
Package testing contains small shared helpers for service tests.
Package user owns the web-account side of a dev user: rows in the `users` table with SSO identity binding.
Package user owns the web-account side of a dev user: rows in the `users` table with SSO identity binding.
Package vault is the godx-admin Go SDK wrapper for HashiCorp Vault (plan #38).
Package vault is the godx-admin Go SDK wrapper for HashiCorp Vault (plan #38).

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL