Skip to content

Commit 60e0f95

Browse files
committed
feat: Introduce BookStore.Shared project for common domain models and DTOs, updating the main README with its structure and clarifying test scope.
1 parent 4baceb3 commit 60e0f95

2 files changed

Lines changed: 21 additions & 4 deletions

File tree

README.md

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -101,12 +101,13 @@ BookStore/
101101
│ ├── BookStore.AppHost/ # Aspire orchestration
102102
│ │ └── Program.cs # Service configuration
103103
│ │
104-
│ ├── BookStore.ServiceDefaults/ # Shared configuration
105104
│ │ └── Extensions.cs # OpenTelemetry, health checks
106105
│ │
107-
│ └── BookStore.Tests/ # Unit tests
108-
│ ├── Handlers/ # Handler tests
109-
│ └── JsonSerializationTests.cs
106+
│ ├── BookStore.Shared/ # Shared domain models & DTOs
107+
│ │ ├── BookStore.Shared/ # Shared library
108+
│ │ └── BookStore.Shared.Tests/# Unit tests for shared code
109+
│ │
110+
│ └── BookStore.Tests/ # Integration tests
110111
111112
├── docs/ # Documentation
112113
│ ├── getting-started.md # Setup guide
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
# BookStore.Shared
2+
3+
This project contains shared domain models, DTOs, value objects, and utilities used across both the backend (`BookStore.ApiService`) and frontend (`BookStore.Web`) projects.
4+
5+
## Purpose
6+
7+
The main goal of this library is to ensure type safety and consistency between the API and the Blazor client by sharing the same data structures.
8+
9+
## Key Components
10+
11+
### Value Objects
12+
- **`PartialDate`**: A custom value object for handling incomplete dates (e.g., "2023", "2023-05"), used extensively for publication dates.
13+
14+
### Models & DTOs
15+
- Contains Data Transfer Objects (DTOs) for books, authors, categories, etc.
16+
- Enums and constants shared across the solution.

0 commit comments

Comments
 (0)