@@ -13,39 +13,63 @@ TaskHub.Shared contains the fundamental components and patterns used across all
1313- ** TaskHub.Shared.Primitives** — Core value objects, identifiers, and base types shared across all domains.
1414- ** TaskHub.Shared.Domain** — Base entities, aggregates, domain events, and helpers for implementing rich domain models.
1515- ** TaskHub.Shared.Response** — Unified result system (` Result ` , ` ValueResult<T> ` , ` ResultFactory ` ) for consistent success/error handling.
16-
17- - ** TaskHub.Shared.Commands.Abstractions** — Abstractions for the command pipeline (interfaces for command handlers, behaviors, buses).
18-
19- - ** TaskHub.Shared.Commands.Bus** — Default in-process command bus implementation with behavior orchestration (behaviors pipeline, cross-cutting concerns).
20-
16+ - ** TaskHub.Shared.Services.Abstractions** — Common service interfaces for dependency inversion.
2117- ** TaskHub.Shared.Events.Abstractions** — Domain event abstractions for cross-service communication and eventual consistency patterns.
2218
19+ ## Persistence
2320- ** TaskHub.Shared.Persistence.Abstractions** — Interfaces for read/write repositories, unit of work, and persistence contracts.
2421- ** TaskHub.Shared.Infrastructure.EfCore** — EF Core helpers, base configurations, and interceptors for database integration.
2522
2623- ** TaskHub.Shared.Redis** — Integration with Redis for caching and distributed state management.
27- - ** TaskHub.Shared.RateLimiter** — Reusable rate-limiting primitives and policies for protecting APIs and internal pipelines.
2824
25+ ## Authorization
2926- ** TaskHub.Shared.Authorization.Abstractions** — Authorization contracts, roles/permissions abstractions, and policies shared across services.
3027- ** TaskHub.Shared.Authorization.Identity** — Identity-related models and helpers used by TaskHub services (users, claims, roles).
3128
32- - ** TaskHub.Shared.Swagger** — Common Swagger / OpenAPI configuration for ASP.NET Core services (conventions, filters, defaults).
29+
30+ ## Tools
3331- ** TaskHub.Shared.Versioning** — Shared conventions and helpers for API versioning across TaskHub microservices.
34- - ** TaskHub.Shared.ConfigurationTools** — Utilities for configuration binding, validation, and environment-specific configuration setup.
35- - ** TaskHub.Shared.Bootstraper** — Opinionated startup helpers to compose TaskHub modules into a microservice with minimal boilerplate.
32+ - ** TaskHub.Shared.RateLimiter** — Reusable rate-limiting primitives and policies for protecting APIs and internal pipelines.
3633
34+
35+ ## Pipeline
36+ - ** TaskHub.Shared.Commands.Abstractions** — Abstractions for the command pipeline (interfaces for command handlers, behaviors, buses).
37+ - ** TaskHub.Shared.Commands.Bus** — Default in-process command bus implementation with behavior orchestration (behaviors pipeline, cross-cutting concerns).
38+
39+
40+ ## Geocoding
3741- ** TaskHub.Shared.GeoCoding.Abstractions** — Abstractions for geocoding providers.
3842- ** TaskHub.Shared.GeoCoding.Nominatim** — Implementation of the geocoding service using the Nominatim API.
3943
40- - ** TaskHub.Observability.Metrics.Abstractions** — Abstractions and options for metrics collection (meters, counters, histograms) used across services.
41- - ** TaskHub.Observability.Metrics.Implementation** — Default metrics implementation built on top of ` IMeterFactory ` and OpenTelemetry metrics.
4244
45+ ## Observability
4346
47+ ### Metrics
48+ - ** TaskHub.Observability.Metrics.Abstractions** — Abstractions and options for metrics collection (meters, counters, histograms) used across services.
49+ - ** TaskHub.Observability.Metrics.Implementation** — Metrics implementation built on top of prometheus-net.
50+
51+ ### Tracing
4452- ** TaskHub.Observability.Traces** — Tracing and implementation built on top of ActivitySource.
4553
54+ ### Logging
55+ - ** TaskHub.Observability.Logger** — Logging implementation built on top of Serilog.
4656
57+ ### OpenTelemetry
4758- ** TaskHub.Observability.OpenTelemetry** — Preconfigured OpenTelemetry setup (resource, exporters, processors) for metrics, traces, and logs (Tempo, Prometheus, Loki).
4859
60+ ### Refactoring
61+ - ** TaskHub.Shared.Refactoring.Abstractions** — Abstractions for service refactoring.
62+ - ** TaskHub.Shared.Refactoring.Implementation** — Implementations for service refactoring and dynamic dependency resolution.
63+
64+ ### Swagger / OpenAPI
65+ - ** TaskHub.Shared.Swagger** — Common Swagger / OpenAPI configuration for ASP.NET Core services (conventions, filters, defaults).
66+
67+
68+ ## Bootstrapping
69+ - ** TaskHub.Shared.Bootstraper.Basic** — Basic service bootstrapping (dependency injection, configuration, logging).
70+ - ** TaskHub.Shared.Bootstraper.Full** — Comprehensive service bootstrapping (all features, advanced configuration, etc.).
71+
72+
4973## Design Principles
5074- ** DDD & Clean Architecture** — Clear separation between abstractions and implementations.
5175- ** Lightweight by Design** — Each project compiles into a minimal, focused package.
0 commit comments