2026-08-18 00:03:27 +09:00
2026-08-18 00:03:27 +09:00
2026-08-18 00:03:27 +09:00
2026-08-18 00:03:27 +09:00

Holodream Tools

Card master data

Collect the current card-related master data and Korean, English, and Japanese text from the public HolodoriDB diff repositories:

npm run data:sync

The generated manifest, raw relational bundle, and card-by-card bundle are written to data/holodoridb. Card artwork, movies, and voices are intentionally excluded.

카드 표시명 수동 수정

특별 버전명이나 번역 이름은 data/card-overrides.csv에서 관리합니다.

cardId,versionName,displayName
card-06002-5-uniq-0066-00,수영복,
  • cardId: 수정할 카드의 고유 ID
  • versionName: 기본 이름 옆에 표시할 짧은 버전명
  • displayName: 기본 멤버 이름을 완전히 바꿀 때만 입력하며, 평소에는 비워 둡니다.

수정 후 npm run data:sync를 실행하면 카드 목록에 반영됩니다. 이 파일은 원본 데이터를 다시 수집해도 덮어쓰지 않습니다.

홀로드림스 덱 최적화와 스킬 로스 분석을 통합할 웹사이트의 개발 기반입니다. 현재 단계에는 게임 기능을 포함하지 않습니다.

구성

  • SvelteKit + TypeScript + @sveltejs/adapter-node
  • SQLite + Drizzle ORM
  • Web Worker를 위한 독립 모듈 경계
  • Docker Compose 개발 환경(HMR)
  • 멀티 스테이지 production 이미지
  • Docker named volume 기반 SQLite 영속 저장소

Docker 개발 실행

docker compose up --build

소스 파일을 수정하면 Windows의 Docker Desktop에서도 polling 기반 HMR이 동작합니다.

종료:

docker compose down

docker compose down은 SQLite 볼륨을 보존합니다. 데이터까지 지우려는 경우에만 docker compose down --volumes를 사용하세요.

production 실행

docker compose -f compose.prod.yaml up --build -d

종료:

docker compose -f compose.prod.yaml down

호스트에서 실행

Node.js 22.12 이상이 필요합니다.

Copy-Item .env.example .env
npm ci
npm run dev

기본 로컬 DB 경로는 ./data/holodream.db입니다.

검증 명령

npm run check
npm run build

스키마를 변경한 뒤에는 migration을 생성합니다.

npm run db:generate

생성된 migration은 서버가 시작될 때 자동 적용됩니다. 호스트에서 수동 적용하려면 npm run db:migrate를 사용합니다.

디렉터리 경계

src/
├─ lib/
│  ├─ engine/       # UI 프레임워크에 의존하지 않는 순수 계산 로직
│  ├─ models/       # UI·엔진·서버가 공유하는 도메인 타입
│  ├─ server/db/    # SQLite/Drizzle 서버 전용 모듈
│  └─ workers/      # 무거운 최적화 작업의 Web Worker 진입점
└─ routes/          # SvelteKit 화면과 API

의존성 방향은 UI → Engine → Models를 유지합니다. 계산 엔진은 Svelte나 서버 모듈을 import하지 않습니다.

S
Description
No description provided
Readme
27 MiB
Languages
Svelte 48.1%
TypeScript 39.3%
JavaScript 9.7%
HTML 1.3%
PowerShell 0.6%
Other 0.9%