# GoldenChart Desktop (Tauri) PC용 클라이언트 — [`frontend/src`](../frontend/src)를 `@frontend` alias로 재사용합니다. API·DB는 exdev 서버에 연결하며, 웹 브라우저와 병행 사용 가능합니다. ## 개발 ```bash # 루트에서 — 최초 1회 (Homebrew + Rust + NSIS/LLVM) npm run install:desktop:deps # 전체 (Windows 크로스 포함) npm run install:desktop:deps -- --mac-only # macOS 빌드만 # PATH (새 터미널 또는) source ~/.zprofile # 또는 source scripts/desktop-dev-path.sh ``` 사전 요구: [Tauri prerequisites](https://tauri.app/start/prerequisites/) (Rust, Xcode CLI 등) ## 빌드 ```bash npm run build:desktop:mac # macOS .dmg npm run build:desktop:win # Windows NSIS (macOS에서 cargo-xwin 크로스 빌드) ./scripts/build-desktop.sh --all ``` 산출물: `desktop/src-tauri/target/release/bundle/dmg/GoldenChart_*.dmg` ### macOS dmg 설치 1. dmg 더블클릭 → **GoldenChart.app** 을 **Applications(응용 프로그램)** 로 **드래그** (자동 설치 아님) 2. **Finder → 응용 프로그램 → GoldenChart** 실행 (`goldenChart` 아님, **GoldenChart**) 3. Launchpad에 없으면 Spotlight(`⌘+Space`)에 `GoldenChart` 검색 4. 창을 닫아도 **메뉴 막대 트레이**에 남음 — 트레이 아이콘 클릭으로 다시 열기 5. 최초 실행: **시스템 설정 → 개인정보 보호 → 확인 없이 열기** ## 주요 기능 - **위젯 OS 창**: `WebviewWindow` + `widget.html` - **트레이 상주**: 닫기 → 숨김, STOMP 백그라운드 유지 - **OS 알림**: 매매 시그널 → `tauri-plugin-notification` - **업데이트**: 설정 → PC 앱 → 업데이트 확인 (`tauri-plugin-updater`) 자세한 배포·파일럿: [docs/desktop-pilot.md](../docs/desktop-pilot.md) ## 운영 스크립트 | 스크립트 | 용도 | |---------|------| | `scripts/install-desktop-build-deps.sh` | Rust, NSIS, cargo-xwin (macOS Jenkins) | | `scripts/setup-desktop-updater-keys.sh` | updater minisign 키 생성 | | `scripts/build-desktop.sh` | dmg + Windows NSIS + updater bundles | | `scripts/publish-desktop-update.sh` | 서명 + latest.json + static 배포 | | `scripts/jenkins-desktop-pipeline.sh` | Jenkins 전체 파이프라인 | | `scripts/server-install-desktop-jenkins.sh` | Jenkins Job XML 생성 | | `scripts/smoke-test-desktop.sh` | CI smoke test | ```bash npm run install:desktop:deps npm run setup:desktop:keys npm run publish:desktop npm run smoke:desktop ```