Directories
¶
| Path | Synopsis |
|---|---|
|
Package ciworkflow scaffolds a starter GitHub Actions pipeline at `.github/workflows/ci.yml`.
|
Package ciworkflow scaffolds a starter GitHub Actions pipeline at `.github/workflows/ci.yml`. |
|
Package commongo embeds the per-language seed packages dropped into every new maestro project under <project>/common/go/.
|
Package commongo embeds the per-language seed packages dropped into every new maestro project under <project>/common/go/. |
|
envx
Package envx contains small environment-variable helpers used by service main packages.
|
Package envx contains small environment-variable helpers used by service main packages. |
|
errs
Package errs defines the project's typed error envelope.
|
Package errs defines the project's typed error envelope. |
|
ginx
Bearer-token authentication middleware for Gin-based services.
|
Bearer-token authentication middleware for Gin-based services. |
|
grpcx
Package grpcx wraps the gRPC-server boilerplate every gRPC service main would otherwise duplicate: bind a listener, Serve in a goroutine, wait for ctx to cancel, then GracefulStop.
|
Package grpcx wraps the gRPC-server boilerplate every gRPC service main would otherwise duplicate: bind a listener, Serve in a goroutine, wait for ctx to cancel, then GracefulStop. |
|
httpx
Package httpx wraps the HTTP-server boilerplate every service main would otherwise duplicate: build an http.Server, run ListenAndServe in a goroutine, wait for ctx to cancel, then Shutdown within a deadline.
|
Package httpx wraps the HTTP-server boilerplate every service main would otherwise duplicate: build an http.Server, run ListenAndServe in a goroutine, wait for ctx to cancel, then Shutdown within a deadline. |
|
identity
Package identity reads the trusted caller an api-gateway injects, so a service behind the gateway can know who's calling without re-validating a token or importing any auth machinery.
|
Package identity reads the trusted caller an api-gateway injects, so a service behind the gateway can know who's calling without re-validating a token or importing any auth machinery. |
|
ids
Package ids hosts typed wrappers for cross-service entity IDs.
|
Package ids hosts typed wrappers for cross-service entity IDs. |
|
internalauth
Package internalauth is the gateway <-> service identity assertion: the gateway mints a short-lived ES256 token asserting the verified caller, and services verify it with the gateway's PUBLIC key before trusting that identity.
|
Package internalauth is the gateway <-> service identity assertion: the gateway mints a short-lived ES256 token asserting the verified caller, and services verify it with the gateway's PUBLIC key before trusting that identity. |
|
jwtx
Package jwtx is the shared token contract for an asymmetric JWT scheme.
|
Package jwtx is the shared token contract for an asymmetric JWT scheme. |
|
logger
Package logger builds the project's standard zap logger.
|
Package logger builds the project's standard zap logger. |
|
mailer
Env-driven factory for the mailer.
|
Env-driven factory for the mailer. |
|
proxyx
Package proxyx is a small reverse-proxy engine for an edge service: it builds an httputil.ReverseProxy to a single upstream that strips a leading API-version segment, forwards X-Forwarded-* headers, and maps upstream failures to clean gateway status codes.
|
Package proxyx is a small reverse-proxy engine for an edge service: it builds an httputil.ReverseProxy to a single upstream that strips a leading API-version segment, forwards X-Forwarded-* headers, and maps upstream failures to clean gateway status codes. |
|
ratelimitx
Package ratelimitx is a distributed request limiter built on a Redis token bucket, with a circuit-breaker-guarded in-memory fallback.
|
Package ratelimitx is a distributed request limiter built on a Redis token bucket, with a circuit-breaker-guarded in-memory fallback. |
|
rdb
Package rdb is the shared Redis connector: it parses a REDIS_URL into a go-redis client.
|
Package rdb is the shared Redis connector: it parses a REDIS_URL into a go-redis client. |
|
Package database scaffolds the per-service files needed to use sqlc and goose: sqlc.yaml, a starter queries.sql, an empty migrations directory and a minimal connection helper at internal/db/conn.go (kept out of db.go so sqlc's generator does not overwrite it on `task generate`).
|
Package database scaffolds the per-service files needed to use sqlc and goose: sqlc.yaml, a starter queries.sql, an empty migrations directory and a minimal connection helper at internal/db/conn.go (kept out of db.go so sqlc's generator does not overwrite it on `task generate`). |
|
Package devsecrets seeds local development secrets for projects that don't use a secrets provider (provider = "none").
|
Package devsecrets seeds local development secrets for projects that don't use a secrets provider (provider = "none"). |
|
Package doppler scaffolds the per-service doppler.yaml repo config that pins each service to its Doppler project and config.
|
Package doppler scaffolds the per-service doppler.yaml repo config that pins each service to its Doppler project and config. |
|
Package editorconfig scaffolds the project-root .editorconfig.
|
Package editorconfig scaffolds the project-root .editorconfig. |
|
Package gitignore scaffolds the project's .gitignore — most importantly the .secrets/ exclusion, so secrets fetched from Doppler are never committed.
|
Package gitignore scaffolds the project's .gitignore — most importantly the .secrets/ exclusion, so secrets fetched from Doppler are never committed. |
|
Package golangci scaffolds the project-root .golangci.yml — the configuration golangci-lint v2 reads when teams run `task lint`.
|
Package golangci scaffolds the project-root .golangci.yml — the configuration golangci-lint v2 reads when teams run `task lint`. |
|
Package gomod keeps Go module paths in step with the project's identity.
|
Package gomod keeps Go module paths in step with the project's identity. |
|
Package license scaffolds the project-root LICENSE file.
|
Package license scaffolds the project-root LICENSE file. |
|
Package projectreadme scaffolds the per-project README.md at the workspace root.
|
Package projectreadme scaffolds the per-project README.md at the workspace root. |
|
Package servicetemplate writes the starter source files for a new service: the entrypoint at cmd/<svc>/main.go and any helper packages that match the chosen shape (HTTP server, gRPC server, worker loop).
|
Package servicetemplate writes the starter source files for a new service: the entrypoint at cmd/<svc>/main.go and any helper packages that match the chosen shape (HTTP server, gRPC server, worker loop). |
|
templates
Package templates embeds the service-shape templates the servicetemplate scaffolder renders.
|
Package templates embeds the service-shape templates the servicetemplate scaffolder renders. |
|
Package taskfile scaffolds the project's Task runner files: a per-service Taskfile.yaml and the root Taskfile.yaml that includes them.
|
Package taskfile scaffolds the project's Task runner files: a per-service Taskfile.yaml and the root Taskfile.yaml that includes them. |
Click to show internal directories.
Click to hide internal directories.