Patterns
These patterns document repeatable implementation shapes used across Archipel. Use them when adding platform library code, application integration code, or AI-assisted scaffolding that must follow repository conventions.
| Pattern | What it covers |
|---|---|
| Configuration Pattern | Typed config keys, registry entries, and ConfigModule integration. |
| DTO & Validation Pattern | Request and response classes, validation decorators, and OpenAPI metadata. |
| Error Handling Pattern | Domain errors, exception filters, and structured error envelopes. |
| Guard & Interceptor Pattern | Metadata decorators, guards, interceptors, and request enforcement. |
| Mapping Pattern | Type-safe mapping keys, profiles, and MappingService usage. |
| Dynamic Module Pattern | NestJS dynamic module registration and dependency wiring. |
| Query Pattern | Repository query objects and transactional query execution. |
| Repository Pattern | RepositoryBase subclasses and Prisma delegate isolation. |
| Testing Pattern | Vitest structure, mocks, and integration test conventions. |
| Bootstrap Pattern | Composable NestJS startup with PlatformApplication and PlatformBootstrapStep. |