80 lines
4.8 KiB
Markdown
80 lines
4.8 KiB
Markdown
# WebClientBase - Blazor Web App .NET 10
|
|
|
|
> **EN**: [English Documentation](docs/en/README.md)
|
|
> **VI**: [Tài liệu Tiếng Việt](docs/vi/README.md)
|
|
|
|
Base frontend web application cho GoodGo Platform được xây dựng với Blazor WebAssembly + BFF Pattern.
|
|
|
|
## Quick Links
|
|
|
|
- 📖 [Architecture](docs/en/ARCHITECTURE.md) / [Kiến trúc](docs/vi/ARCHITECTURE.md)
|
|
- 🚀 [Quick Start](docs/en/README.md#quick-start)
|
|
- 🔧 [Configuration](docs/en/README.md#configuration)
|
|
|
|
## Architecture / Kiến trúc
|
|
|
|
```
|
|
┌─────────────────────────────────────────────────────────────────────┐
|
|
│ Browser │
|
|
│ ┌─────────────────────────────────────────────────────────────┐ │
|
|
│ │ Blazor WebAssembly Client │ │
|
|
│ └─────────────────────────────────────────────────────────────┘ │
|
|
└────────────────────────────────┬────────────────────────────────────┘
|
|
│ /api/*
|
|
▼
|
|
┌─────────────────────────────────────────────────────────────────────┐
|
|
│ BFF (Backend for Frontend) │
|
|
│ WebClientBase.Server + YARP │
|
|
│ ┌─────────────────────────────────────────────────────────────┐ │
|
|
│ │ Routes: /api/iam/** → iam-service │ │
|
|
│ │ /api/merchants/** → merchant-service │ │
|
|
│ │ /api/catalog/** → catalog-service │ │
|
|
│ │ /api/orders/** → order-service │ │
|
|
│ └─────────────────────────────────────────────────────────────┘ │
|
|
└────────────────────────────────┬────────────────────────────────────┘
|
|
│ Internal Network
|
|
▼
|
|
┌─────────────────────────────────────────────────────────────────────┐
|
|
│ Microservices │
|
|
│ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐ │
|
|
│ │ IAM │ │ Merchant │ │ Catalog │ │ Order │ │
|
|
│ │ :5101 │ │ :5102 │ │ :5103 │ │ :5104 │ │
|
|
│ └──────────┘ └──────────┘ └──────────┘ └──────────┘ │
|
|
└─────────────────────────────────────────────────────────────────────┘
|
|
```
|
|
|
|
## Tech Stack
|
|
|
|
| Layer | Technology |
|
|
|-------|------------|
|
|
| Client | Blazor WebAssembly (.NET 10) |
|
|
| BFF | ASP.NET Core + YARP Reverse Proxy |
|
|
| Shared | Class Library với Data Annotations |
|
|
| Styling | CSS Variables, Dark Mode |
|
|
|
|
## Getting Started / Bắt đầu
|
|
|
|
```bash
|
|
cd apps/web-client-base-net
|
|
dotnet restore
|
|
dotnet run --project src/WebClientBase.Server
|
|
|
|
# Open http://localhost:5091
|
|
```
|
|
|
|
## Project Structure / Cấu trúc
|
|
|
|
```
|
|
web-client-base-net/
|
|
├── src/
|
|
│ ├── WebClientBase.Client/ # Blazor WebAssembly
|
|
│ ├── WebClientBase.Server/ # BFF with YARP Proxy
|
|
│ └── WebClientBase.Shared/ # Shared DTOs
|
|
├── docs/
|
|
│ ├── en/ # English docs
|
|
│ └── vi/ # Vietnamese docs
|
|
└── Dockerfile
|
|
```
|
|
|
|
See detailed documentation in [docs/en/](docs/en/) or [docs/vi/](docs/vi/).
|