Index into the per-package API documentation. Each package below has its own canonical reference page —
docs/<Area>/<Package>.md — kept in sync with src/ on every change. This page does not restate their contents;
it points to them, sorted by area, and lists all 28 published packages plus the one source-only one.
Looking for a package by the problem you have rather than by name? Use the Which package do I need? table on the documentation hub.
- DKNet.Fw.Extensions — framework-agnostic reflection, type, string, enum,
DateTimeand DI-inspection helpers, plus fluent assembly/type scanning - DKNet.RandomCreator — cryptographically secure random string and character generation for passwords, tokens, and other secrets
- DKNet.EfCore.Abstractions — entity base classes, domain-event contracts, and the attributes that steer audit, sequence, and mapping behaviour
- DKNet.EfCore.Extensions — convention-based entity configuration, global query filters, data seeding, GUID v7 keys, SQL sequences,
SnapshotContext - DKNet.EfCore.Specifications — filter/includes/order-by as one reusable object, the non-generic
IRepositorySpec, and the runtime Dynamic Predicate Builder. The current, supported way to query and persist - DKNet.EfCore.Hooks — before/after-
SaveChangesinterceptor pipeline (IBeforeSaveHookAsync/IAfterSaveHookAsync) - DKNet.EfCore.Events — dispatches domain events raised by entities during
SaveChanges - DKNet.EfCore.AuditLogs — structured, field-level change records handed to publishers you register
- DKNet.EfCore.DataAuthorization — global query filter on reads plus
SaveChanges-time owner stamping on writes - DKNet.EfCore.Encryption — transparent column-level encryption via an EF Core
ValueConverter - DKNet.EfCore.DtoGenerator — Roslyn incremental source generator that emits DTO properties from an entity type. See also the Global Exclusions Guide
- DKNet.EfCore.Relational.Helpers — table creation, connection access, table-name resolution, and table-existence checks
- DKNet.SlimBus.Extensions —
Fluents.Requests/Fluents.Queries/Fluents.EventsConsumerscontracts, auto-save after a successful write, and domain events forwarded onto the bus - DKNet.SlimBus.Generators — emits request records, handlers, and endpoint registration from
[CrudCreate]/[CrudUpdate]/[CrudAction]-attributed entity members
- DKNet.Svc.BlobStorage.Abstractions — provider-agnostic
IBlobServicecontract and shared model types - DKNet.Svc.BlobStorage.AwsS3 — AWS S3 adapter, also usable against MinIO and Cloudflare R2
- DKNet.Svc.BlobStorage.AzureStorage — Azure Blob Storage adapter
- DKNet.Svc.BlobStorage.Local — local-filesystem adapter with path-traversal protection
- DKNet.Svc.Encryption — AES-GCM and RSA encryption, RSA signing, HMAC and SHA hashing, Base64/Base64URL helpers
- DKNet.Svc.PdfGenerators — HTML or Markdown to PDF via headless Chromium (PuppeteerSharp) and Markdig
- DKNet.Svc.Transformation — fills bracketed tokens in a template string from plain objects or string dictionaries
- DKNet.AspCore.Extensions — host-populated request members, discovered and versioned endpoint groups, generic list/read/delete endpoints,
FluentResults-to-IResultconversion - DKNet.AspCore.Tasks —
IBackgroundTaskimplementations run once at host start-up - DKNet.AspCore.Idempotency — endpoint filter that blocks a duplicate write and replays or rejects the retry
- DKNet.AspCore.Idempotency.MsSqlStore — SQL Server key store
- DKNet.AspCore.Idempotency.NpgsqlStore — PostgreSQL key store
- DKNet.AspCore.Idempotency.RedisStore — Redis key store, no schema or migrations
- DKNet.AspCore.Idempotency.Relational — shared EF Core building blocks the relational stores derive from; not referenced directly by application code
- Aspire.Hosting.ServiceBus — adds the Azure Service Bus emulator as a resource inside a .NET Aspire AppHost. Source-only (
<IsPackable>false</IsPackable>) — reference the project, not a package
There is no DKNetOptions and no single aggregator to configure DKNet through — each package registers itself
independently and exposes its own strongly-typed options where configuration is needed. Only the three blob
adapters bind from an IConfiguration section; everything else is configured by a delegate, a constructor
argument, or a type parameter. See Configuration & Setup for the full picture.
- Examples & Recipes — runnable usage examples
- SlimBus.ApiEndpoints template — complete reference implementation, in the DKNet.Templates repository
- Unit tests — API usage in the sibling
*.Testsprojects next to each package undersrc/