@@ -63,4 +63,62 @@ php artisan world-heritage:import-japanese-names --force
6363
6464``` bash
6565php artisan test
66- ```
66+ ```
67+
68+ ## Architecture Overview
69+ ```
70+ [Browser]
71+ │
72+ ▼
73+ ┌─────────────────────────────────────────────────────────────┐
74+ │ Frontend (world-heritage-frontend) │
75+ │ React + TypeScript + Vite / TailwindCSS │
76+ └─────────────────────────────────────────────────────────────┘
77+ │ REST API (HTTP)
78+ ▼
79+ ┌─────────────────────────────────────────────────────────────┐
80+ │ Backend (world-heritage-api) / Laravel 11 │
81+ │ │
82+ │ ┌──────────────────────────────────────────────────────┐ │
83+ │ │ Presentation Layer │ │
84+ │ │ Controller / FormRequest │ │
85+ │ └───────────────────┬──────────────────────────────────┘ │
86+ │ │ │
87+ │ ┌───────────┴────────────┐ │
88+ │ │ Write │ Read │
89+ │ ▼ ▼ │
90+ │ ┌───────────────┐ ┌─────────────────┐ │
91+ │ │ Application │ │ Application │ │
92+ │ │ UseCommand │ │ ListQuery │ │
93+ │ └───────┬───────┘ └────────┬────────┘ │
94+ │ │ │ │
95+ │ ▼ ▼ │
96+ │ ┌───────────────┐ ┌─────────────────┐ │
97+ │ │ Domain Layer │ │ QueryService │ │
98+ │ │ UseCase │ │ DTO │ │
99+ │ │ Entity │ └────────┬────────┘ │
100+ │ │ ValueObject │ │ │
101+ │ │ Repository │ │ │
102+ │ └───────┬───────┘ │ │
103+ │ │ │ │
104+ │ ┌───────▼───────┐ │ │
105+ │ │Infrastructure │ │ │
106+ │ │ Eloquent │ │ │
107+ │ │ Repository │ │ │
108+ │ └───────┬───────┘ │ │
109+ │ │ │ │
110+ └──────────┼───────────────────────┼──────────────────────────┘
111+ │ 一覧 / 詳細取得 │ キーワード検索
112+ ▼ ▼
113+ ┌─────────┐ ┌───────────┐
114+ │ MySQL │◀─── ID ───│ Algolia │
115+ │ (DB) │ │ (Search) │
116+ └─────────┘ └───────────┘
117+ ```
118+
119+ ## Related Repositories
120+
121+ | Role | Repository |
122+ | ---| ---|
123+ | Frontend | https://github.com/zigzagdev/world-heritage-frontend |
124+ | Backend API | https://github.com/zigzagdev/world-heritage-api |
0 commit comments