이 파일은 언제 어디서든 작업을 이어갈 수 있도록 현재 상태를 기록합니다.
feat/mvp-v0.1.0 — MVP v0.1.0을 위한 장기 피처 브랜치. 모든 Phase 작업은 이 브랜치에 커밋 후 릴리스 시 master로 merge.
git clone https://github.com/jun7680/Storefront.git
cd Storefront
git checkout feat/mvp-v0.1.0
brew install xcodegen create-dmg
xcodegen generate # .xcodeproj 재생성 (gitignore됨)
open Storefront.xcodeproj # Xcode에서 ⌘R
# 첫 실행 시 TCA 매크로 "Trust & Enable" 프롬프트 → 허용
# CLI 빌드: xcodebuild ... -skipMacroValidation -skipPackagePluginValidation- TCA (The Composable Architecture) v1.15+ —
@Reducer+@ObservableState기반 - 루트
AppFeature가 자식 피처를Scope로 합성 - 사이드이펙트는
@Dependency주입 (Phase 2+에서DatabaseClient등 추가) - 테스트:
TestStore기반 액션 단위 검증
| Phase | 상태 | 메모 |
|---|---|---|
| 1. Xcode 프로젝트 부트스트랩 | ✅ 완료 | xcodegen, macOS 26, Swift 6, GRDB 7.5 + TCA 1.15 SPM |
| 초기 문서 · 라이선스 · Asset | ✅ 완료 | LICENSE(MIT), README, Sky/Orange 컬러 |
| TCA 리팩터 | ✅ 완료 | AppFeature(@Reducer, @ObservableState) / AppView / WelcomeView(StoreOf) / TestStore 3건 통과 |
| 2. SQLite 파일 열기 + 테이블 리스트 | ✅ 완료 | BrowserFeature / DatabaseClient(actor registry) / SchemaInspector / NavigationSplitView 2-column + Tables/Views 섹션 + 행수 배지 |
| 3. 행 뷰어 + 라이브 리로드 | ✅ 완료 | RowFetcher / DynamicRowGrid(ScrollView+HStack) / CellView(NULL/INT/REAL/TEXT/BLOB 색상) / FileWatcherClient(DispatchSource, WAL/-shm 포함) / 상단 Toast |
| 4. 시뮬레이터 앱 자동 탐색 | ✅ 완료 | SimulatorScanner(simctl JSON + FS 글로빙) / SimulatorClient / SimulatorPickerFeature(DisclosureGroup 트리) / Welcome의 "시뮬레이터" 버튼(⌘L) + Welcome 드래그&드롭 |
| 5. SwiftData 스토어 지원 | ✅ 완료 | SwiftDataDetector(Z_METADATA/Z_PRIMARYKEY 판별) + SwiftDataDecoder(Z 접두어 정규화) + TableInfo.Classification(swiftDataEntity/swiftDataSystem) + 사이드바 Entities/Tables/Views/System 섹션 분리 + 원본명 tooltip + DynamicRowGrid 전체 폭 flex-fill |
| 6. DMG 빌드 파이프라인 | ✅ 완료 | Makefile(setup/generate/build/test/archive/dmg/icon/clean) + scripts/build.sh (xcodebuild archive + exportArchive + ad-hoc codesign) + scripts/make-dmg.sh (create-dmg 우선, hdiutil fallback) + scripts/make-icon.sh (sips로 전 해상도) + scripts/ExportOptions.plist. make dmg → build/Storefront-0.1.0.dmg 4.8MB 생성 검증됨 |
| 7. GitHub Actions 릴리스 | ✅ 완료 | .github/workflows/build.yml (PR/push 시 test+build), release.yml (tag v* → make dmg → softprops/action-gh-release@v2, SHA256SUMS 자동 생성), .github/ISSUE_TEMPLATE/bug_report.yml |
- 전체 설계: Docs/PLAN.md
- 색상: Sky Blue
#5AA7E6+ Sunset Orange#FF9F5A
- Phase 5 빌드/테스트: 13/13 통과 (AppFeature 3 + BrowserFeature 4 + SimulatorPicker 3 + SwiftDataDecoder 3)
- DynamicRowGrid: GeometryReader 기반 flex/고정 폭 자동 전환 (컬럼수 × 140pt > 가용폭이면 horizontal scroll, 아니면 균등 분배)
- LazyVStack + pinned section header로 상단 고정 (스크롤 시 헤더 유지)
MVP v0.1.0 완료 🎉 — 모든 Phase 통과. 남은 액션:
- 릴리스 검증: 로컬에서
git tag v0.1.0-rc1 && git push origin v0.1.0-rc1→ Actionsrelease.yml실행 로그 확인 → GitHub Releases에 DMG+SHA256 업로드 검증 - 프리뷰 피드백 반영: 필요 시 색상/레이아웃/문구 조정
- feat/mvp-v0.1.0 → master merge: 모든 Phase 안정되면 PR 오픈 or 직접 merge
- Public 전환: 릴리스 준비되면
gh repo edit --visibility public - v0.2 로드맵: 실제 iPhone 지원 / 커스텀 앱 아이콘 / Homebrew Cask / SQL 콘솔 등
- GitHub: https://github.com/jun7680/Storefront
- Visibility: Private (v0.1.0 릴리스 전까지)
- Default branch:
master - Active branch:
feat/mvp-v0.1.0 - Last commit on feat/mvp-v0.1.0:
ci: pin runners to macos-26(2a70095) - v0.1.0-rc1 릴리스 완료 (2026-04-17 08:31 KST): https://github.com/jun7680/Storefront/releases/tag/v0.1.0-rc1 — Storefront-0.1.0.dmg (5.0MB) + SHA256SUMS.txt, prerelease 마킹