Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
28 commits
Select commit Hold shift + click to select a range
6754276
reorganize docs structure
kangddong Apr 6, 2026
17d8973
feat: #47 다크모드 지원 및 디자인 시스템 컬러 토큰 리뉴얼
kangddong May 19, 2026
2341a12
fix: migrate remaining legacy color tokens
kangddong May 20, 2026
77d78fd
chore: refresh docs and stage dark-mode work prep
kangddong May 27, 2026
c9fa80f
chore: add color asset lint script
kangddong May 27, 2026
36fb927
fix: add dark appearance to brand colorsets
kangddong May 27, 2026
413e8ec
ci: wire color asset lint into build workflow
kangddong May 27, 2026
2ae5634
docs: record asset lint validation results
kangddong May 27, 2026
20d95d1
chore: testingDarkMode plan and implementation docs
kangddong May 27, 2026
f7db8d4
chore: add DoriTestSupport module with domain mock factories
kangddong May 27, 2026
9c398af
chore: scaffold snapshot test targets for 4 feature modules
kangddong May 27, 2026
b425341
test: P0 dark-mode snapshot baselines (6 TC × light/dark = 12)
kangddong May 27, 2026
4c62de5
chore: gitignore root-level build/ (stale Xcode DerivedData redirect)
kangddong May 27, 2026
e18aaa2
test: P1 dark-mode snapshot baselines (13 TC × light/dark = 26)
kangddong May 27, 2026
a6ed9eb
feat: add assertSnapshotPair helper for light/dark snapshot pairs
kangddong Jun 4, 2026
c1ee90f
test: AddDori P2 dark-mode snapshot baselines (7 TC × light/dark = 14)
kangddong Jun 4, 2026
2a82b12
test: Calendar P2 dark-mode snapshot baselines (3 TC × light/dark = 6)
kangddong Jun 4, 2026
c8eff82
test: MyPage P2 dark-mode snapshot baselines (3 TC × light/dark = 6)
kangddong Jun 4, 2026
ba9a719
test: History P2 dark-mode snapshot baselines (14 TC × light/dark = 28)
kangddong Jun 4, 2026
626d901
docs: testingDarkMode Implementation 검증 기록 D2/D3 채움
kangddong Jun 4, 2026
5db6fd9
docs: P2 sweep 1차 발견 결함 기록
kangddong Jun 4, 2026
9107dbd
fix: DoriCommonAlert secondary 버튼 텍스트 다크 토큰 적용
kangddong Jun 4, 2026
71d1693
fix: OnBrand colorset 다크 값 #FFFFFF → #111111 + baseline re-record
kangddong Jun 4, 2026
11c4837
fix: DoriTextField .foregroundStyle(.textPrimary) 명시
kangddong Jun 4, 2026
92402dd
docs: Phase D3 fix 진행 기록 (A 제외, B/C/E 적용, D 보류)
kangddong Jun 5, 2026
87df0f7
fix: 카카오 로그인 버튼 텍스트를 brand-fixed #212223 으로 변경
kangddong Jun 6, 2026
5065b8b
Merge pull request #49 from do-ri/feat/47-snapshot-pair
kangddong Jun 6, 2026
885e72f
Merge pull request #50 from do-ri/feat/47-dark-mode-snapshot-catalog
kangddong Jun 6, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,9 @@ jobs:
- name: Generate workspace
run: tuist generate --no-open

- name: Lint color assets
run: python3 Scripts/lint_color_assets.py

- name: Build project
run: |
xcodebuild \
Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@ playground.xcworkspace
# .swiftpm

.build/
build/
**/Package.resolved

*.xcconfig
Expand Down
46 changes: 33 additions & 13 deletions AGENTS.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,25 @@
# Dori-iOS Agent Index

이 파일은 프로젝트 백과사전이 아니라 진입점이다. 구현 세부보다 오래 가는 규칙은 `docs/constitution.md`와 `ARCHITECTURE.md`에 둔다.
- 이 파일은 프로젝트 백과사전이 아니라 진입점이다.
- 구현 세부보다 오래 가는 규칙은 `docs/` 디렉토리에 구조화 된 하위문서로 둔다.
- 아키텍처에 대한 지침과 규칙은 `ARCHITECTURE.md`에 둔다.

## Document Contract

- `AGENTS.md` 는 문서 읽기 순서, 역할 분담, 참조 규칙을 정의하는 인덱스다.
- `ARCHITECTURE.md` 는 시스템의 큰 그림, 경계, 변경 비용이 큰 결정을 설명한다.
- `docs/` 는 오래 가는 규칙과 운영 지침을 주제별 하위 문서로 유지한다.
- 세 문서는 독립적으로 읽혀야 하지만, 같은 결론을 가리켜야 한다.
- 구조가 바뀌면 `AGENTS.md`, `ARCHITECTURE.md`, 관련 `docs/` 문서를 함께 갱신한다.

## Docs Map

- `docs/core/`: 프로젝트 헌법, 제품 범위, 모듈 경계, 기능 표면, 기술 기준
- `docs/frontend/`: iOS 프론트엔드 구현 규칙
- `docs/backend/`: 서버 통신과 백엔드 경계 규칙
- `docs/workflows/`: 저장소 운영과 작업 절차
- `docs/reference/`: 템플릿, 예시, 학습용 참고 자료
- `plan/`: 작업 시작점과 완료 이력

## Role

Expand All @@ -23,28 +42,29 @@

## Read Order

1. `docs/constitution.md`
1. `docs/core/constitution.md`
2. `ARCHITECTURE.md`
3. `docs/project-overview.md`
4. `docs/directory-structure.md`
5. `docs/network-layer.md`
6. `docs/swift-language-guide.md`
3. `docs/core/project-overview.md`
4. `docs/core/directory-structure.md`
5. `docs/backend/network-layer.md`
6. `docs/frontend/swift-language-guide.md`
7. `docs/frontend/security.md`
8. `docs/frontend/test-strategy.md`
9. `docs/git-worktree.md`
10. `docs/lessons-learned.md`
9. `docs/workflows/git-worktree.md`
10. `docs/workflows/plan-workflow.md`
11. `docs/core/lessons-learned.md`

## Compatibility Paths

- `.claude/CLAUDE.md` 는 이 파일을 가리키는 심볼릭 링크다.
- `.claude/rules` 는 `docs/` 를 가리키는 심볼릭 링크다.
- 기존 `@rules/...`, `@network-layer.md`, `@swift-language-guide.md` 참조는 계속 동작해야 한다.
- 문서 참조는 루트 파일명이 아니라 실제 하위 경로를 기준으로 유지한다.

## Reference Docs

아래 문서는 템플릿 또는 학습용 참고 자료다. 현재 구현 설명보다 예시 제공이 목적이며, 충돌 시 상단 Read Order 문서를 우선한다.

- `docs/tca-navigation.md`
- `docs/tca-network.md`
- `docs/tca-test.md`
- `docs/routing-guide.md`
- `docs/reference/tca-navigation.md`
- `docs/reference/tca-network.md`
- `docs/reference/tca-test.md`
- `docs/reference/routing-guide.md`
11 changes: 3 additions & 8 deletions ARCHITECTURE.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@

이 문서 구성은 matklad의 `ARCHITECTURE.md`와 rust-analyzer의 architecture 문서처럼, 큰 그림과 변경 비용이 큰 경계를 먼저 설명하는 방식을 따른다.

`AGENTS.md`가 읽기 순서와 문서 계약을 정의한다면, 이 문서는 그 계약 아래에서 시스템 구조를 설명한다. 세부 규칙과 운영 기준은 `docs/` 하위 문서로 분리하고, 여기서는 왜 그런 경계가 필요한지에 집중한다.

## 1. System Shape

Dori-iOS는 TCA 기반 iOS 클라이언트다. 앱은 인증 상태를 확인한 뒤 온보딩 또는 메인 경험으로 진입하고, 각 화면은 독립 Feature가 상태를 소유한다.
Expand Down Expand Up @@ -112,11 +114,4 @@ AppFeature
- 인증 실패 처리는 중앙 경계에서 설명 가능해야 한다.
- 현재 화면 구조는 모듈 경계를 흐리지 않는 선에서만 확장한다.
- 문서는 구현 예시보다 구조 규칙을 우선한다.

## 8. Related Docs

- `docs/constitution.md`
- `docs/project-overview.md`
- `docs/directory-structure.md`
- `docs/network-layer.md`
- `docs/swift-language-guide.md`
- 실행할 작업은 `plan/` 에서 시작하고, 완료 기록은 `plan/history.md` 로 누적한다.
6 changes: 3 additions & 3 deletions Projects/App/Sources/CustomTabBar.swift
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ struct CustomTabBar: View {
selectedTab = .myPage
}
}
.background(.doriWhite)
.background(.bgPrimary)
.shadow(
color: .black.opacity(0.05),
radius: 8,
Expand Down Expand Up @@ -70,11 +70,11 @@ private struct TabBarItem: View {
.resizable()
.aspectRatio(contentMode: .fit)
.frame(width: 24, height: 24)
.foregroundStyle(isSelected ? .main : .grey600)
.foregroundStyle(isSelected ? .brandMain : .textSecondary)

Text(title)
.pretendard(font)
.foregroundStyle(isSelected ? .main : .grey600)
.foregroundStyle(isSelected ? .brandMain : .textSecondary)
}
.frame(maxWidth: .infinity)
.contentShape(Rectangle())
Expand Down
Loading
Loading