Documentation
¶
Overview ¶
Package soro provides the application container for the Soro framework.
Index ¶
- type App
- type Option
- func WithAPI(httpAPI *api.API) Option
- func WithAudienceAuthorizer(authorizer api.AudienceAuthorizer) Option
- func WithConfig(settings *config.Config) Option
- func WithDatabase(db *database.DB) Option
- func WithHealth(registry *health.Registry) Option
- func WithJobs(client *jobs.Client) Option
- func WithLogger(logger *slog.Logger) Option
- func WithMailTransport(transport mail.Transport) Option
- func WithMailer(client *mail.Client) Option
- func WithObservability(provider *observability.Provider) Option
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type App ¶
type Option ¶
type Option func(*appSettings)
func WithAudienceAuthorizer ¶
func WithAudienceAuthorizer(authorizer api.AudienceAuthorizer) Option
WithAudienceAuthorizer connects endpoint audience policies to the application's principal scopes and software-client authentication.
func WithConfig ¶
func WithDatabase ¶
WithDatabase replaces database initialization. The App owns and closes db.
func WithHealth ¶
func WithLogger ¶
func WithMailTransport ¶
func WithMailer ¶
func WithObservability ¶
func WithObservability(provider *observability.Provider) Option
Directories
¶
| Path | Synopsis |
|---|---|
|
Package api wraps Huma with Soro routing, errors, resources, and middleware.
|
Package api wraps Huma with Soro routing, errors, resources, and middleware. |
|
Package auth defines Soro's authentication-neutral request principal context.
|
Package auth defines Soro's authentication-neutral request principal context. |
|
Package cli implements the Soro command-line interface.
|
Package cli implements the Soro command-line interface. |
|
cmd
|
|
|
soro
command
|
|
|
Package config loads and validates Soro's typed application configuration.
|
Package config loads and validates Soro's typed application configuration. |
|
Package database owns Soro's PostgreSQL pool, Bun bridge, and transactions.
|
Package database owns Soro's PostgreSQL pool, Bun bridge, and transactions. |
|
Package errors defines stable errors shared by Soro's non-HTTP layers.
|
Package errors defines stable errors shared by Soro's non-HTTP layers. |
|
examples
|
|
|
basic
Package basic is a compiling Phase 1 example application model.
|
Package basic is a compiling Phase 1 example application model. |
|
basic/cmd/demo
command
|
|
|
basic/cmd/server
command
|
|
|
Package factory provides typed, persistence-agnostic test data factories.
|
Package factory provides typed, persistence-agnostic test data factories. |
|
Package generate implements Soro's deterministic application and component generators.
|
Package generate implements Soro's deterministic application and component generators. |
|
Package health provides cheap liveness and dependency readiness endpoints.
|
Package health provides cheap liveness and dependency readiness endpoints. |
|
internal
|
|
|
testdb
Package testdb provides schema-isolated PostgreSQL databases to Soro tests.
|
Package testdb provides schema-isolated PostgreSQL databases to Soro tests. |
|
Package jobs wraps River with Soro transactions, options, and telemetry.
|
Package jobs wraps River with Soro transactions, options, and telemetry. |
|
Package lifecycle defines Soro's model operation hooks and change context.
|
Package lifecycle defines Soro's model operation hooks and change context. |
|
Package mail provides Soro messages, templates, transports, and queued delivery.
|
Package mail provides Soro messages, templates, transports, and queued delivery. |
|
Package migrate applies readable PostgreSQL migrations through Soro transactions.
|
Package migrate applies readable PostgreSQL migrations through Soro transactions. |
|
Package model provides Soro's persistence model primitives.
|
Package model provides Soro's persistence model primitives. |
|
Package observability owns Soro tracing, metrics, and HTTP instrumentation.
|
Package observability owns Soro tracing, metrics, and HTTP instrumentation. |
|
Package query parses and applies safe, resource-defined PostgreSQL queries.
|
Package query parses and applies safe, resource-defined PostgreSQL queries. |
|
Package repository provides typed PostgreSQL persistence for Soro models.
|
Package repository provides typed PostgreSQL persistence for Soro models. |
|
Package serializer keeps persistence models separate from public responses.
|
Package serializer keeps persistence models separate from public responses. |
|
Package sorotest provides schema-isolated Soro application test helpers.
|
Package sorotest provides schema-isolated Soro application test helpers. |
|
Package validation provides Soro's HTTP-independent validation engine.
|
Package validation provides Soro's HTTP-independent validation engine. |
Click to show internal directories.
Click to hide internal directories.