From a7b633a3e58c62e41857b4a10524a8dad28067ad Mon Sep 17 00:00:00 2001 From: sb Date: Sun, 12 Jul 2026 00:03:39 +0900 Subject: [PATCH] =?UTF-8?q?docs:=20README=20=EA=B0=B1=EC=8B=A0=20(?= =?UTF-8?q?=EA=B5=AC=EC=A1=B0=C2=B7=EC=98=A4=EB=8A=98=20=EC=A7=84=ED=96=89?= =?UTF-8?q?=20=EB=82=B4=EC=97=AD)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Opus 4.8 (1M context) --- README.md | 68 ++++++++++++++++++++++++++++++++++++++++--------------- 1 file changed, 50 insertions(+), 18 deletions(-) diff --git a/README.md b/README.md index 7cd6311..8017bcf 100644 --- a/README.md +++ b/README.md @@ -1,39 +1,71 @@ # 산책갈개 · dognation_PT (Frontend) -우리 개 성향에 맞는 동네 산책 메이트를 안전하게 찾는 iOS/AOS 앱의 프론트엔드. +우리 강아지 성향에 맞는 동네 산책 메이트를 안전하게 찾는 iOS/AOS 앱의 프론트엔드. ## 스택 - **Vue 3 + TypeScript** - **Quasar** (UI, 하늘색 파스텔 테마) - **Vite** (번들러) -- **Pinia** (상태관리 · 구독 티어) -- **Capacitor** (iOS/AOS 네이티브 패키징) +- **Pinia** (상태관리 · 구독 티어 · 매칭) +- **Capacitor** (iOS/AOS 네이티브 패키징, SPM) +- **카카오 지도** · **STOMP**(실시간 알림/채팅) ## 시작하기 ```bash npm install -cp .env.example .env # VITE_API_BASE_URL 설정 +cp .env.example .env # VITE_API_BASE_URL, VITE_KAKAO_MAP_KEY 설정 npm run dev # 웹 개발 서버 (http://localhost:9000) +npm run typecheck # vue-tsc 타입체크 ``` -## 빌드 +## 빌드 / 네이티브 ```bash npm run build # 타입체크 + 웹 빌드 npm run build:app # Capacitor용 빌드 (상대경로) -``` - -## 네이티브(추가 예정) -```bash -npx cap add ios -npx cap add android -npx cap sync +npx cap sync ios # 네이티브 동기화 ``` ## 구조 -- `src/pages/HomePage.vue` — 스팟 지도 / 체크인 / 한줄평 / 메이트 -- `src/pages/ProfilePage.vue` — 강아지 프로필 / 댕비티아이 성향 태그 / 구독 티어 -- `src/stores/subscription.ts` — 구독 티어 상태 (광고 노출·매칭 제한 파생) -- `src/components/AdBanner.vue` — FREE 티어 배너 광고 (v-if 제어) -- `src/quasar-variables.scss` — 하늘색 파스텔 브랜드 컬러 +- `src/pages/HomePage.vue` — 지도 / 체크인 / 자주 오는 견종 / AI 추천 찰떡 메이트 / 한줄평 / 스팟 메이트 +- `src/pages/ProfilePage.vue` — 강아지 프로필(중성화 필수) / 댕비티아이 성향 태그 / 동네 찰떡지수 +- `src/layouts/MainLayout.vue` — 헤더(알림 벨) / 탭바 / 매칭 채팅·피드백 다이얼로그 +- `src/components/` + - `KakaoMap.vue` — 카카오 지도(마커·최근접 스팟 선택·확대/축소) + - `MatchChatDialog.vue` — 매칭 1:1 채팅 + '산책 완료' 체크아웃 + - `FeedbackDialog.vue` — 산책 후 피드백(잘 놀았어요/안 맞았어요 + 사유) + - `AffinityBadges.vue` — 동네/우리 찰떡지수 배지(유료 게이팅) + - `AdBanner.vue` — FREE 티어 배너 광고 +- `src/stores/` — `subscription`(티어) · `matching`(알림/진행중/피드백) · `dogs` · `auth` +- `src/api/` — `spots` · `matches` · `affinity` · `dogs` · `chat` -> 백엔드: [dognation_BT](https://gitlab.sblog.kr/sb/dognation_BT) +--- + +## 오늘 진행 내역 (2026-07-11 ~ 07-12) + +### 지도 · 스팟 +- 지도 **네이버 → 카카오 전환**(네이버 코드 유지), 확대/축소, 지도 클릭 시 **최근접 스팟 선택** +- 체크인 후 **AI 추천 찰떡 메이트** 표시 (`AI 궁합 추천` → `AI 추천 찰떡 메이트`, 안내 문구 추가) +- 도착 버튼 아래 **'이 시간대 자주 보이는 견종'** 한 줄 표시(실패해도 화면 안 깨짐) +- 로딩 문구 → **'친구 찾는 중'** + +### 매칭 · 채팅 +- 매칭 플로우 UI — 진행중 표시 · 실시간 알림 · 수락/거절 · **1:1 채팅** +- 체크인 옆 스팟 채팅 버튼 제거(매칭 1:1 채팅만 유지) + +### 찰떡지수 피드백 (신규) +- `FeedbackDialog` — 잘 놀았어요/안 맞았어요, BAD 시 사유 선택 + 추가입력 +- 채팅 **'산책 완료' 버튼** & 2시간 **`FEEDBACK_REQUEST` 알림** → 피드백 팝업 +- `AffinityBadges` — **동네 찰떡지수**(전체 노출) · **우리 찰떡지수**(매칭 쌍, 무료회원은 "유료회원 전용") + 스팟 메이트·AI 추천 카드 및 우리 강아지 프로필에 노출 + +### 강아지 프로필 +- 등록 시 **중성화 여부 필수 선택**, AI 추천에 중성화 조건 옵션 연동 +- UI 문구 **'우리 개' → '우리 강아지'** + +### UI · 네이티브 정리 +- 로그인 화면 QLayout 래핑(빈 화면 수정) +- iOS **상/하단 이중 safe-area 여백 제거**(contentInset never), 광고 배너를 footer 안으로 +- input 포커스 시 가로 스크롤/확대 방지 +- **관리자 콘솔을 별도 프로젝트(dognation_AT)로 분리** — PT에서 관리자 코드 제거 + +> 백엔드: [dognation_BT](https://gitlab.sblog.kr/sb/dognation_BT) \ No newline at end of file