Directories
¶
| Path | Synopsis |
|---|---|
|
clean
|
|
|
application/port/domainevent
Package domainevent defines application ports for publishing and subscribing to clean-domain events.
|
Package domainevent defines application ports for publishing and subscribing to clean-domain events. |
|
application/port/outbox
Package outbox re-exports the reusable outbox contract for clean services.
|
Package outbox re-exports the reusable outbox contract for clean services. |
|
application/port/queue
Package queue defines the shared task-queue vocabulary: the Task contract, the default channel, and the channel→subject mapping.
|
Package queue defines the shared task-queue vocabulary: the Task contract, the default channel, and the channel→subject mapping. |
|
application/service/activitylog
Package activitylog provides shared activity log application services.
|
Package activitylog provides shared activity log application services. |
|
application/service/authorization
Package authorization re-exports the reusable authorization vocabulary for clean services.
|
Package authorization re-exports the reusable authorization vocabulary for clean services. |
|
bootstrap
Package bootstrap provides shared application lifecycle logic and bootstrap helpers.
|
Package bootstrap provides shared application lifecycle logic and bootstrap helpers. |
|
domain
Package domain is reserved for shared clean-domain helpers.
|
Package domain is reserved for shared clean-domain helpers. |
|
domain/activitylog
Package activitylog defines the ActivityLog entity for tracking entity lifecycle events.
|
Package activitylog defines the ActivityLog entity for tracking entity lifecycle events. |
|
infrastructure/authentication
Package authentication re-exports reusable authentication contracts for clean services.
|
Package authentication re-exports reusable authentication contracts for clean services. |
|
infrastructure/migrator
Package migrator re-exports the reusable migrator contract for clean services.
|
Package migrator re-exports the reusable migrator contract for clean services. |
|
infrastructure/migrator_factory
Package migrator_factory selects the migration driver from configuration.
|
Package migrator_factory selects the migration driver from configuration. |
|
infrastructure/outbox_queue
Package outbox_queue implements the queue.Queue contract on top of the outbox: each task is stored as an outbox message whose subject carries the channel, so the relay ships it to the work-queue stream.
|
Package outbox_queue implements the queue.Queue contract on top of the outbox: each task is stored as an outbox message whose subject carries the channel, so the relay ships it to the work-queue stream. |
|
interface/subscription/messaging
Package messaging re-exports the reusable inbound message contract for clean services.
|
Package messaging re-exports the reusable inbound message contract for clean services. |
|
interface/subscription/objectstorage
Package objectstorage re-exports the reusable object-storage event contract for clean services.
|
Package objectstorage re-exports the reusable object-storage event contract for clean services. |
|
events
|
|
|
assets
Package assets contains the public integration-event contracts owned by assets-core.
|
Package assets contains the public integration-event contracts owned by assets-core. |
|
Package migrations embeds shared Tupic database migrations.
|
Package migrations embeds shared Tupic database migrations. |
|
pkg
|
|
|
apperror
Package apperror defines the platform-wide application error type used to map domain and application failures to transport-level responses.
|
Package apperror defines the platform-wide application error type used to map domain and application failures to transport-level responses. |
|
clock
Package clock provides the Clock contract to provide time with testability.
|
Package clock provides the Clock contract to provide time with testability. |
|
config
Package config loads layered JSON configuration files with environment variable overrides into a service-defined config struct.
|
Package config loads layered JSON configuration files with environment variable overrides into a service-defined config struct. |
|
database
Package database holds database connection configuration and lifecycle.
|
Package database holds database connection configuration and lifecycle. |
|
echo
Package echo provides the shared Echo HTTP stack: instance assembly, apperror-aware error handling, request logging, Sentry integration, the HTTP server lifecycle, and actor guard middlewares.
|
Package echo provides the shared Echo HTTP stack: instance assembly, apperror-aware error handling, request logging, Sentry integration, the HTTP server lifecycle, and actor guard middlewares. |
|
gorm_uow
Package gorm_uow provides the GORM implementation of the UnitOfWork contract, plus the context plumbing repositories use to join an ambient transaction.
|
Package gorm_uow provides the GORM implementation of the UnitOfWork contract, plus the context plumbing repositories use to join an ambient transaction. |
|
iam
Package iam authenticates requests using IAM (Keycloak) service JWTs.
|
Package iam authenticates requests using IAM (Keycloak) service JWTs. |
|
logger
Package logger provides the Logger contract.
|
Package logger provides the Logger contract. |
|
messaging
Package messaging defines the transport-agnostic inbound message contract and router shared by subscription adapters (NATS, SQS, …).
|
Package messaging defines the transport-agnostic inbound message contract and router shared by subscription adapters (NATS, SQS, …). |
|
migrator
Package contract defines the migration driver contract.
|
Package contract defines the migration driver contract. |
|
nats
Package nats provides the NATS JetStream connection, subject routing, and event/queue subscribers shared by all Tupic services.
|
Package nats provides the NATS JetStream connection, subject routing, and event/queue subscribers shared by all Tupic services. |
|
objectstorage
Package objectstorage defines the transport-agnostic object-storage event contract shared by storage-event adapters (SQS, SNS, EventBridge, …).
|
Package objectstorage defines the transport-agnostic object-storage event contract shared by storage-event adapters (SQS, SNS, EventBridge, …). |
|
outbox
Package outbox implements the Transactional Outbox pattern: outbound messages are stored in the caller's DB transaction and a relay ships them to NATS asynchronously.
|
Package outbox implements the Transactional Outbox pattern: outbound messages are stored in the caller's DB transaction and a relay ships them to NATS asynchronously. |
|
pagination
Package pagination defines shared cursor-pagination types.
|
Package pagination defines shared cursor-pagination types. |
|
postgres_migrator
Package postgres_migrator implements the migration contract with golang-migrate.
|
Package postgres_migrator implements the migration contract with golang-migrate. |
|
random
Package random provides a crypto/rand-backed implementation of the random.Random contract.
|
Package random provides a crypto/rand-backed implementation of the random.Random contract. |
|
redis
Package redis provides a Redis client and lifecycle shared by Tupic services.
|
Package redis provides a Redis client and lifecycle shared by Tupic services. |
|
s3
Package s3 implements the storage contract with AWS S3 (or a compatible API such as LocalStack/MinIO).
|
Package s3 implements the storage contract with AWS S3 (or a compatible API such as LocalStack/MinIO). |
|
sentry
Package sentry initializes the Sentry SDK with a shutdown flush hook.
|
Package sentry initializes the Sentry SDK with a shutdown flush hook. |
|
sqs
Package sqs is the SQS adapter for object-storage events: it polls an SQS queue fed by S3 bucket notifications, parses each message into an objectstorage.Event, and dispatches it through an objectstorage.Router.
|
Package sqs is the SQS adapter for object-storage events: it polls an SQS queue fed by S3 bucket notifications, parses each message into an objectstorage.Event, and dispatches it through an objectstorage.Router. |
|
utility
Package utility provides general-purpose, dependency-free helper functions shared across Tupic services.
|
Package utility provides general-purpose, dependency-free helper functions shared across Tupic services. |
|
validator
Package validator defines the Validator contract.
|
Package validator defines the Validator contract. |
|
test
|
|
|
stub/authenticationtest
Package authenticationtest provides a test-double authenticator that skips real IAM: it decodes the actor from the bearer token and resolves the user through a caller-supplied lookup, so the double carries no persistence dependency.
|
Package authenticationtest provides a test-double authenticator that skips real IAM: it decodes the actor from the bearer token and resolves the user through a caller-supplied lookup, so the double carries no persistence dependency. |
|
stub/migratortest
Package migratortest provides recording test doubles for the migrator contract.
|
Package migratortest provides recording test doubles for the migrator contract. |
Click to show internal directories.
Click to hide internal directories.