Directories
¶
| Path | Synopsis |
|---|---|
|
Package preset loads and applies curated scaffolds ("presets") on top of an existing maestro project.
|
Package preset loads and applies curated scaffolds ("presets") on top of an existing maestro project. |
|
presets/api-gateway/main/internal/auth
Package auth verifies the access tokens where the gateway upstream services are behind.
|
Package auth verifies the access tokens where the gateway upstream services are behind. |
|
presets/api-gateway/main/internal/gateway
Package gateway is the reverse-proxy core of api gateway preset which routes inbound requests to upstream services by longest-matching path prefix.
|
Package gateway is the reverse-proxy core of api gateway preset which routes inbound requests to upstream services by longest-matching path prefix. |
|
presets/api-gateway/main/internal/server
Package server wires the api-gateway: request logging, local health probes, and the reverse proxy as the catch-all for everything else.
|
Package server wires the api-gateway: request logging, local health probes, and the reverse proxy as the catch-all for everything else. |
|
presets/auth-jwt/cleanup/internal/worker
Package worker is the cleanup target for the auth-jwt preset.
|
Package worker is the cleanup target for the auth-jwt preset. |
|
presets/auth-jwt/main/internal/auth
Authenticated symmetric encryption for the auth-jwt preset.
|
Authenticated symmetric encryption for the auth-jwt preset. |
|
presets/auth-jwt/main/internal/db
Package db owns the database connection for this service.
|
Package db owns the database connection for this service. |
|
presets/auth-jwt/main/internal/email
Package email builds the typed mailer.Message values the auth service sends.
|
Package email builds the typed mailer.Message values the auth service sends. |
|
presets/auth-jwt/main/internal/requests
Package requests holds the typed JSON bodies every auth route expects, with go-playground/validator constraints declared inline via Gin's `binding:` tags.
|
Package requests holds the typed JSON bodies every auth route expects, with go-playground/validator constraints declared inline via Gin's `binding:` tags. |
|
presets/auth-jwt/main/internal/responses
Package responses holds the typed JSON bodies the auth routes return on success.
|
Package responses holds the typed JSON bodies the auth routes return on success. |
|
presets/auth-jwt/main/internal/routes
Always-on base of the auth-jwt preset's API.
|
Always-on base of the auth-jwt preset's API. |
|
presets/auth-jwt/main/internal/server
Package server wires the auth-jwt service: opens the database, builds the auth service container (JWT + OTP configs + sqlc queries), attaches middleware + base routes, and registers the feature routes collected in internal/routes.
|
Package server wires the auth-jwt service: opens the database, builds the auth service container (JWT + OTP configs + sqlc queries), attaches middleware + base routes, and registers the feature routes collected in internal/routes. |
|
presets/auth-jwt/main/internal/services
Always-on auth services for the auth-jwt preset: refresh and logout, used by every sign-in method.
|
Always-on auth services for the auth-jwt preset: refresh and logout, used by every sign-in method. |
|
scaffold
|
|
|
ciworkflow
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`. |
|
commongo
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/. |
|
commongo/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. |
|
commongo/errs
Package errs defines the project's typed error envelope.
|
Package errs defines the project's typed error envelope. |
|
commongo/ginx
Bearer-token authentication middleware for Gin-based services.
|
Bearer-token authentication middleware for Gin-based services. |
|
commongo/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. |
|
commongo/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. |
|
commongo/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. |
|
commongo/ids
Package ids hosts typed wrappers for cross-service entity IDs.
|
Package ids hosts typed wrappers for cross-service entity IDs. |
|
commongo/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. |
|
commongo/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. |
|
commongo/logger
Package logger builds the project's standard zap logger.
|
Package logger builds the project's standard zap logger. |
|
commongo/mailer
Env-driven factory for the mailer.
|
Env-driven factory for the mailer. |
|
commongo/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. |
|
commongo/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. |
|
commongo/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. |
|
database
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`). |
|
devsecrets
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"). |
|
doppler
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. |
|
editorconfig
Package editorconfig scaffolds the project-root .editorconfig.
|
Package editorconfig scaffolds the project-root .editorconfig. |
|
gitignore
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. |
|
golangci
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`. |
|
gomod
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. |
|
license
Package license scaffolds the project-root LICENSE file.
|
Package license scaffolds the project-root LICENSE file. |
|
projectreadme
Package projectreadme scaffolds the per-project README.md at the workspace root.
|
Package projectreadme scaffolds the per-project README.md at the workspace root. |
|
servicetemplate
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). |
|
servicetemplate/templates
Package templates embeds the service-shape templates the servicetemplate scaffolder renders.
|
Package templates embeds the service-shape templates the servicetemplate scaffolder renders. |
|
taskfile
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. |
|
tui
|
|
|
dbwizard
Package dbwizard is the interactive picker that runs when `maestro service <name>` is called.
|
Package dbwizard is the interactive picker that runs when `maestro service <name>` is called. |
|
presetwizard
Package presetwizard is the interactive TUI for `maestro preset`.
|
Package presetwizard is the interactive TUI for `maestro preset`. |
Click to show internal directories.
Click to hide internal directories.