D3RO Voice — 멀티플랫폼 AI 음성 어시스턴트 (Monorepo & CI/CD)
Find a file
yunchan8804 a041f1b6a9 feat(V2-1c): packages/ui 추출 — DS 컴포넌트 + theme + theme-vars 분리
packages/ui (@d3ro/ui) 신규:
- src/theme.ts (d3roPalette/d3roTypo/d3roShadow/d3roRadius SSOT)
- src/theme-vars.ts (팝업/main 프로세스용 CSS 변수 맵)
- src/components/ds/ (CrtDisplay, InstrumentPanel, Led, MetalCard,
  MetalDial, PhosphorText, PhysicalButton, ScreenPanel, ButtonGroup)
- src/index.ts barrel
- subpath exports: ./theme, ./theme-vars, ./components/ds
- React/MUI/Emotion은 peerDependencies로 선언
- @d3ro/core만 직접 의존성

apps/desktop/src/shared/ 디렉토리 완전 제거:
- theme-vars가 마지막 남은 파일이었음
- tsconfig include에서 src/shared/**/* 제거

일괄 치환 (renderer 전역):
- ../theme, ../../theme, ./theme → @d3ro/ui/theme
- ../components/ds, ../../components/ds, ./ds, ../ds → @d3ro/ui/components/ds
- ../ds/<Component>, ../../ds/<Component> → @d3ro/ui/components/ds
  (세부 파일 import는 barrel로 통합)
- @shared/theme-vars → @d3ro/ui/theme-vars (WindowManager)

apps/desktop 설정:
- package.json: @d3ro/ui: '*' dep 추가
- tsconfig.node/web.json: @shared/* paths 완전 제거, @d3ro/ui,
  @d3ro/ui/* paths 추가
- electron.vite.config.ts: @shared alias 제거, @d3ro/ui alias 추가,
  externalize exclude에 @d3ro/ui 추가
- vitest.config.ts: alias 교체

DS 컴포넌트 내부의 '../../theme' 상대 경로는 packages/ui 구조에서
동일하게 해결되어 그대로 유효.

검증: typecheck + build + dev 런타임 모두 통과.
2026-04-08 14:50:33 +09:00
.claude skill updated 2026-04-08 13:23:51 +09:00
.github/workflows 랜딩 페이지: D3RO 브랜드 프로모션 사이트 + GitHub Pages 배포 2026-04-05 23:55:13 +09:00
apps/desktop feat(V2-1c): packages/ui 추출 — DS 컴포넌트 + theme + theme-vars 분리 2026-04-08 14:50:33 +09:00
docs docs: V2 설계 리뷰 반영 — Adapter 패턴, Local-first 동기화, CRDT 협업 2026-04-08 12:36:31 +09:00
memory feat(V2-1c): packages/ui 추출 — DS 컴포넌트 + theme + theme-vars 분리 2026-04-08 14:50:33 +09:00
packages feat(V2-1c): packages/ui 추출 — DS 컴포넌트 + theme + theme-vars 분리 2026-04-08 14:50:33 +09:00
site 랜딩 페이지: D3RO 브랜드 프로모션 사이트 + GitHub Pages 배포 2026-04-05 23:55:13 +09:00
.editorconfig v1.0.0 배포 준비: CHANGELOG, LICENSE, 프로젝트 메타 파일 추가 2026-04-06 09:29:27 +09:00
.eslintrc.cjs Phase 1+2 구현: Electron 뼈대 + STT/핫키/오케스트레이터 2026-04-05 02:01:37 +09:00
.gitattributes v1.0.0 배포 준비: CHANGELOG, LICENSE, 프로젝트 메타 파일 추가 2026-04-06 09:29:27 +09:00
.gitignore v1.0.0 배포 준비: CHANGELOG, LICENSE, 프로젝트 메타 파일 추가 2026-04-06 09:29:27 +09:00
.gitlab-ci.yml Phase 7~8 구현: 테스트 + 빌드 + CI/CD + SoundEffect + AutoLaunch + UI 리디자인 2026-04-05 09:12:56 +09:00
.nvmrc v1.0.0 배포 준비: CHANGELOG, LICENSE, 프로젝트 메타 파일 추가 2026-04-06 09:29:27 +09:00
.prettierrc Phase 1+2 구현: Electron 뼈대 + STT/핫키/오케스트레이터 2026-04-05 02:01:37 +09:00
CHANGELOG.md v1.0.0 배포 준비: CHANGELOG, LICENSE, 프로젝트 메타 파일 추가 2026-04-06 09:29:27 +09:00
CLAUDE.md feat: Phase 15.5-2 — 오디오 보존 + pyannote 실제 화자 구분 2026-04-08 12:17:37 +09:00
CONTRIBUTING.md v1.0.0 배포 준비: CHANGELOG, LICENSE, 프로젝트 메타 파일 추가 2026-04-06 09:29:27 +09:00
LICENSE v1.0.0 배포 준비: CHANGELOG, LICENSE, 프로젝트 메타 파일 추가 2026-04-06 09:29:27 +09:00
package-lock.json feat(V2-1c): packages/ui 추출 — DS 컴포넌트 + theme + theme-vars 분리 2026-04-08 14:50:33 +09:00
package.json fix(V2-1a): 루트 workspace 설정 3파일 보충 2026-04-08 14:29:40 +09:00
SECURITY.md v1.0.0 배포 준비: CHANGELOG, LICENSE, 프로젝트 메타 파일 추가 2026-04-06 09:29:27 +09:00
tsconfig.base.json feat(V2-1a): Monorepo 구조 전환 — apps/desktop으로 V1 이동 2026-04-08 14:04:41 +09:00
tsconfig.json fix(V2-1a): 루트 workspace 설정 3파일 보충 2026-04-08 14:29:40 +09:00
turbo.json feat(V2-1a): Monorepo 구조 전환 — apps/desktop으로 V1 이동 2026-04-08 14:04:41 +09:00