-
Notifications
You must be signed in to change notification settings - Fork 2
Community Routes
ClarusIubar edited this page May 3, 2026
·
4 revisions
커뮤니티 경로는 사용자가 실제 방문한 스탬프 기반 동선을 공개 경로로 발행하고, 다른 사용자가 이를 탐색할 수 있게 하는 기능입니다.
- 경로 발행은 로그인 사용자만 가능합니다.
- 발행 기준은 임의 장소 선택이 아니라
travel_session과 실제 스탬프 기록입니다. - 공개 경로는 좋아요순, 최신순 등 탐색 기준을 가질 수 있습니다.
- 사용자 소유 데이터는 session user 기준으로 검증합니다.
flowchart TD
A["travel_session"] --> B["stamped places"]
B --> C["route draft"]
C --> D["published community route"]
D --> E["community route feed"]
E --> F["route detail"]
앱 전환을 고려하면 community route 응답 shape는 안정적으로 유지해야 합니다.
주의할 변경:
- route id 형식 변경
- place list field 변경
- like count field 변경
- owner 표시 방식 변경
- pagination 방식 변경
| 개념 | 설명 |
|---|---|
| travel session | 사용자의 실제 이동/방문 묶음 |
| stamped place | 사용자가 방문 인증한 장소 |
| route draft | 공개 전 동선 초안 |
| community route | 공개된 사용자 동선 |
| route like | 다른 사용자의 반응 |
공개 코스는 단순히 사용자가 임의로 장소를 찍어 만든 목록이 아니라, 실제 방문 또는 스탬프 근거가 있는 동선이어야 합니다.
공개 가능 조건:
- 로그인 사용자
- 본인 session 기반
- 최소 장소 수 충족
- 공개 가능한 장소만 포함
- 삭제/비활성 장소 제외 또는 표시 정책 명확화
기본 후보:
- 최신순
- 좋아요순
- 장소 수
- 특정 카테고리 포함 여부
주의:
- 정렬 field가 API contract가 되면 앱에서도 의존합니다.
- pagination과 정렬은 함께 테스트해야 합니다.
| 작업 | 권한 |
|---|---|
| 공개 경로 조회 | 익명 허용 가능 |
| 내 경로 생성 | 로그인 필요 |
| 내 경로 수정 | owner only |
| 내 경로 삭제 | owner only |
| 좋아요 | 로그인 필요 |
| 관리자 숨김 | admin only |
유지해야 할 개념:
- route id
- route title
- route owner
- places array
- like count
- created at
- visibility
변경 시 위험:
- places array shape 변경
- owner field 제거
- like count type 변경
- visibility 의미 변경
- 공개 경로 목록 empty state
- 공개 경로 상세 조회
- 로그인 사용자 경로 생성
- owner가 아닌 사용자의 수정 실패
- 좋아요 추가/해제
- 비활성 장소 포함 시 표시 정책
- pagination과 정렬
커뮤니티 경로는 “지도 위의 추천 동선”으로 이해되어야 합니다.
화면에서 보여야 하는 것:
- 경로 제목
- 작성자 표시
- 포함 장소 목록
- 대략적인 순서
- 좋아요 수
- 생성 시각
- 상세 보기 진입
과도하게 보여주지 말 것:
- DB id
- 내부 session id
- 너무 긴 설명
- 운영자용 상태값
공개 경로 품질을 낮추는 요소:
- 장소가 1개뿐인 경로
- 비활성 장소만 포함된 경로
- 좌표가 잘못된 장소 포함
- 중복 장소가 과도함
- 제목이 비어 있음
향후 검토:
- 최소 장소 수
- 대표 이미지 선택
- 경로 추천 기준
- 신고/숨김 기능
- 관리자 moderation
앱에서도 community route를 그대로 소비할 수 있도록 아래를 유지합니다.
- route id
- place list shape
- owner display field
- like count
- created_at
- pagination
앱에서 별도 처리할 것:
- native map 표시
- route polyline 표시
- offline/network fallback
- share sheet
커뮤니티 경로 기능을 완료로 판단하려면:
- 목록 조회 테스트
- 상세 조회 테스트
- 로그인 사용자 생성 테스트
- owner-only 수정/삭제 테스트
- 좋아요 테스트
- API 호환성 검증
- 모바일 UI 확인