Appearance
Package and capability catalog
This is the canonical discovery contract for the repository. Every public package and template is listed here. Exact public types and members are generated in the API reference; configuration, endpoints and examples live in the linked module guides.
Composition entry points
| Capability | Primary registration | Contract documentation |
|---|---|---|
| Core ASP.NET foundation | AddGrydCore, AddGrydApiVersioning, AddGrydSwagger | Core API |
| Authentication and tenant authorization | AddGrydAuth, AddGrydAuthTokenValidator | Auth getting started, HTTP reference |
| CRUD | AddGrydCrud, AddGrydCrudQueryKit | CRUD getting started, API reference |
| Auditing | AddGrydAudit | Audit getting started, configuration |
| Background jobs | AddGrydJobs | Jobs getting started, configuration |
| Reports | AddGrydReports | Reports getting started, API reference |
| Notifications | AddGrydNotifications | Notifications getting started, API reference |
| Files | AddGrydFiles | Files getting started, API reference |
| Observability | AddGrydObservability, AddGrydOpenTelemetry | Generated API reference |
Core packages
| Package | Capability |
|---|---|
Gryd.Core | Guards, utility primitives and general extensions. |
Gryd.Domain | Entities, aggregate roots, value objects, events, audit and tenancy contracts. |
Gryd.Application | CQRS, result/paging contracts, validation behaviors and application abstractions. |
Gryd.Infrastructure | EF repositories, unit of work, cache, event dispatch, tenancy and object storage. |
Gryd.API | ASP.NET controllers, error handling, localization, routing, tenancy, versioning and Swagger. |
Gryd.Observability | Logging, audit, metrics and tracing abstractions plus MediatR behaviors. |
Gryd.Observability.OpenTelemetry | OpenTelemetry tracing, metrics, exporters and HTTP enrichers. |
Authentication packages
| Package | Capability |
|---|---|
GrydAuth.Domain | Users, tenants, roles, MFA and federation domain model. |
GrydAuth.Application | Authentication, authorization, MFA, federation and tenant use cases. |
GrydAuth.Infrastructure | JWT, refresh/session storage, EF, Redis, external identity providers and secret protection. |
GrydAuth.API | Versioned Auth/admin controllers, permission policies and HTTP contracts. |
Configuration and lifecycle contracts: authentication, authorization, MFA, multi-tenancy, federation, security.
CRUD packages
| Package | Capability |
|---|---|
GrydCrud.Core | CRUD/query contracts, filters, pagination and operation options. |
GrydCrud.Services | Service-based CRUD implementation. |
GrydCrud.Cqrs | CQRS commands, queries and handlers. |
GrydCrud.API | Generic/controller HTTP integration. |
GrydCrud.AutoMapper | AutoMapper mapping adapter. |
GrydCrud.FluentValidation | FluentValidation adapter and registration. |
GrydCrud.Auth | Permission-aware CRUD integration. |
GrydCrud | Convenience meta-package composing the CRUD layers. |
Audit and jobs packages
| Package | Capability |
|---|---|
GrydAudit.Core | Audit entities and contracts. |
GrydAudit.Application | Audit queries and use cases. |
GrydAudit.Infrastructure | EF persistence and change interceptors. |
GrydAudit.API | Audit HTTP endpoints and registration. |
GrydAudit | Audit meta-package. |
GrydJobs.Core | Job definitions, schedules and provider contracts. |
GrydJobs.Application | Job commands, queries and orchestration. |
GrydJobs.Infrastructure | Persistence, workers and Hangfire integration. |
GrydJobs.API | Dashboard, health checks and job endpoints. |
GrydJobs | Jobs meta-package. |
Reports packages
| Package | Capability |
|---|---|
GrydReports.Core | Report definitions, schedules, executions and provider contracts. |
GrydReports.Application | Generation, scheduling, delivery and query use cases. |
GrydReports.Infrastructure | Persistence, storage and report orchestration. |
GrydReports.Infrastructure.QuestPdf | PDF rendering adapter. |
GrydReports.Infrastructure.CsvHelper | CSV rendering adapter. |
GrydReports.Infrastructure.ClosedXml | Excel rendering adapter. |
GrydReports.Scheduling.GrydJobs | Scheduling integration with GrydJobs. |
GrydReports.API | Report HTTP endpoints and health checks. |
GrydReports | Reports meta-package. |
Notifications packages
| Package | Capability |
|---|---|
GrydNotifications.Core | Notification entities, channels, templates and options. |
GrydNotifications.Application | Send, query and template use cases. |
GrydNotifications.Infrastructure | Persistence, SMTP, queues, workers and cleanup. |
GrydNotifications.Infrastructure.SendGrid | SendGrid email adapter. |
GrydNotifications.Infrastructure.Firebase | Firebase push adapter. |
GrydNotifications.Scheduling | Notification scheduling contracts and services. |
GrydNotifications.API | Notification HTTP endpoints, SignalR and health checks. |
GrydNotifications | Notifications meta-package. |
Files packages
| Package | Capability |
|---|---|
GrydFiles.Core | Stored file entities, retention modes, configuration contracts and domain exceptions. |
GrydFiles.Application | IFileService, the IFileScanner abstraction, profile resolution and startup validation. |
GrydFiles.Infrastructure | EF persistence, repositories and the five lifecycle jobs. |
GrydFiles.Infrastructure.ClamAv | ClamAV scan provider, speaking INSTREAM to the clamd daemon. |
GrydFiles.API | File lifecycle HTTP endpoints. |
GrydFiles | Files meta-package. |
CLI templates
| Template | Purpose | Defaults and options |
|---|---|---|
gryd-minimal | Small API using the core packages and a selected database provider. | Template options |
gryd-api | Complete API with optional Auth, CRUD, Audit, Jobs, Reports, Notifications and Docker. | Template options |
gryd-module | Clean Architecture module/solution with optional API, tests and framework modules. | Template options |
Contract maintenance rule
Every new public package or template must be added here. A public type/member change must update XML documentation; a configuration, endpoint or behavior change must update its module guide and examples. scripts/check-doc-contracts.sh and the combined VitePress/DocFX build enforce discoverability and valid navigation in CI.