GoldenChart Desktop (Tauri)
PC용 클라이언트 — frontend/src를 @frontend alias로 재사용합니다.
API·DB는 exdev 서버에 연결하며, 웹 브라우저와 병행 사용 가능합니다.
개발
# 루트에서 — 최초 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 (Rust, Xcode CLI 등)
빌드
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 설치
- dmg 더블클릭 → GoldenChart.app 을 Applications(응용 프로그램) 로 드래그 (자동 설치 아님)
- Finder → 응용 프로그램 → GoldenChart 실행 (
goldenChart아님, GoldenChart) - Launchpad에 없으면 Spotlight(
⌘+Space)에GoldenChart검색 - 창을 닫아도 메뉴 막대 트레이에 남음 — 트레이 아이콘 클릭으로 다시 열기
- 최초 실행: 시스템 설정 → 개인정보 보호 → 확인 없이 열기
주요 기능
- 위젯 OS 창:
WebviewWindow+widget.html - 트레이 상주: 닫기 → 숨김, STOMP 백그라운드 유지
- OS 알림: 매매 시그널 →
tauri-plugin-notification - 업데이트: 설정 → PC 앱 → 업데이트 확인 (
tauri-plugin-updater)
자세한 배포·파일럿: 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 |
npm run install:desktop:deps
npm run setup:desktop:keys
npm run publish:desktop
npm run smoke:desktop