From aad4788e8430ad7244d0628047aaf40d0590ef95 Mon Sep 17 00:00:00 2001 From: kjh2064 Date: Mon, 29 Jun 2026 23:03:44 +0900 Subject: [PATCH] =?UTF-8?q?docs:=20UI=20=EB=94=94=EC=9E=90=EC=9D=B8=20?= =?UTF-8?q?=EC=9B=90=EC=B9=99=20=EC=B6=94=EA=B0=80=20=EB=B0=8F=20MudBlazor?= =?UTF-8?q?=20=ED=8F=90=EA=B8=B0=20=EC=A0=95=EC=B1=85=20=EB=AA=85=EC=8B=9C?= =?UTF-8?q?=20(2026-06-29)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Fluent UI Blazor v5 기본 템플릿 및 컴포넌트 매핑 - Skeleton을 기본 로딩 상태로 지정 - 데이터 먼저 스켈톤 렌더링 후 실제 UI 교체 패턴 - MudBlazor 완전 폐기: 신규 금지, 기존 코드 마이그레이션 필수 - 배포 환경 정보 (Hetzner 178.104.200.7) - Gitea 저장소 정보 (kjh2064/QuantEngineByItz) Co-Authored-By: Claude Haiku 4.5 --- CLAUDE.md | 126 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 126 insertions(+) create mode 100644 CLAUDE.md diff --git a/CLAUDE.md b/CLAUDE.md new file mode 100644 index 0000000..14defa0 --- /dev/null +++ b/CLAUDE.md @@ -0,0 +1,126 @@ +# CLAUDE.md + +This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository. + +## Project Overview + +**QuantEngine v0.1** — A comprehensive quantitative analysis and data collection system for retirement asset portfolio management. + +- **Architecture**: .NET 9 + C# (web UI + APIs), Python (legacy data collection/analysis) +- **Web UI**: Blazor WebAssembly (Fluent UI Blazor v5) + ASP.NET Core Web API +- **Database**: PostgreSQL (Npgsql 8.0), single unified database +- **Data Source**: KIS Open API (quotations/ranking read-only), with fallbacks +- **Key Runtimes**: .NET 9, Python 3.9+, Node.js 16+ + +### Current Status (2026-06-29) + +- ✅ Python codebase operational (1,140 files) +- ✅ .NET 9 migration in progress (Phase 1: Web UI) +- ✅ Blazor WASM with Fluent UI v5 RC baseline +- ✅ ASP.NET Core API endpoints operational +- ✅ PostgreSQL migration complete + +## Deployment & Operations + +**Production Server**: Hetzner Cloud `178.104.200.7` (kjh2064@178.104.200.7) + +Projects on server: +1. **TaxBaik** (홈페이지) — Nginx location `/taxbaik` +2. **QuantEngine** (데이터 수집/분석) — Nginx location `/quantengine` + +See [Temp/DEPLOYMENT_GUIDE.md](Temp/DEPLOYMENT_GUIDE.md) for deployment procedures. + +### Quick Deploy (QuantEngine) + +```powershell +ssh kjh2064@178.104.200.7 +systemctl status quantengine-api +journalctl -u quantengine-api -f +sudo systemctl restart quantengine-api +``` + +### Git Repository + +**Gitea Server** (동일 호스트): +- **HTTP**: `http://178.104.200.7/kjh2064/QuantEngineByItz.git` +- **SSH**: `git@178.104.200.7:2222/...` + +## UI Design Principles (2026-06-29) + +### Framework & Design System + +- **Primary Framework**: [Fluent UI Blazor v5](https://v5.fluentui-blazor.net/) +- **Design System**: Microsoft Fluent Design System (WCAG 2.1 AA) +- **Deprecation**: MudBlazor is deprecated. Migrate all existing pages to Fluent UI v5 progressively. + +### Component Development Rules + +1. **All UI Development** (New + Refactored): + - Use Fluent UI Blazor v5 components exclusively + - Fall back to pure HTML/CSS if Fluent v5 doesn't provide + - **Never introduce MudBlazor components** (deprecated) + - Progressively migrate existing MudBlazor to Fluent v5 + +2. **Loading States** (Priority order): + - `` — **Default** for lists, cards, dashboards, detail pages + - Pure HTML `
` — For custom layouts + - `MudProgressCircular` / `MudProgressLinear` — Exception only (existing legacy) + - Blocking spinners — **Avoid** + +3. **Data Rendering Pattern**: + - First render: Skeleton placeholders only + - On data arrival: Replace skeleton with actual UI + - Never show blank states while loading + +4. **Component Mapping** (Fluent UI v5): + +| UI Element | Fluent UI Component | Alternative | +|-----------|-------------------|-------------| +| Button | `` | - | +| Input field | `` | HTML `` | +| Dropdown | `` | HTML `