F2. 경매 탐색
1. 기능명
경매 탐색 — 홈 · 목록 · 검색 · 정렬
2. 기능 목적
사용자가 참여하고 싶은 경매를 발견하게 한다.
- 마감이 임박한 경매를 먼저 보여줘 참여 기회를 놓치지 않게 한다
- 사연이 많이 모인 경매를 노출해 읽는 재미로 유입시킨다
- 비회원도 열람할 수 있게 하여 진입 장벽을 낮춘다
3. 동작 방식
3.1 홈 /main
섹션은 하나뿐이다.
┌──────────────────────────┐
│ 마감 임박 │ ← 가로 스크롤 카드
├──────────────────────────┤
│ 전체 경매 목록 │ ← 세로 목록
└──────────────────────────┘
| 영역 | 내용 |
|---|---|
| 마감 임박 | 마감이 가까운 경매를 가로 스크롤로 |
| 전체 목록 | 최신순 세로 목록. 더 보기로 목록 화면 진입 |
카드에는 대표 이미지·제목·남은 시간·모인 사연 수를 담는다.
큐레이션 섹션을 여러 개 두지 않는다. 서비스가 데이터 0건에서 시작하므로, 섹션이 많으면 빈 상태만 여러 번 보인다.
3.2 경매 목록 /auctions
화면 구성은 세 덩어리뿐이다.
┌──────────────────────────┐
│ 검색 입력창 │ ← 목록 상단에 고정
├──────────────────────────┤
│ 마감임박 · 인기 · 최신 │ ← 정렬 탭
├──────────────────────────┤
│ 경매 카드 목록 │
└──────────────────────────┘
| 항목 | 내용 |
|---|---|
| 정렬 | 마감 임박순(기본) · 사연 많은순 · 최신순 |
| 검색 | 목록 상단 입력창에서 제목 검색 |
| 상태 표시 | 진행중 / 마감 임박 / 마감됨 |
인기순 기준은 '모인 사연 수'다. 찜 수가 아니다. 사연이 많이 모인 경매가 곧 관심이 모인 경매이고, 읽을거리가 많은 경매다.
3.3 검색 — 입력창 하나가 전부
| 규칙 | 내용 |
|---|---|
| 검색 대상 | 제목만 |
| 위치 | 목록 상단 입력창 |
| 결과 | 같은 목록 자리에 그린다 |
| 초기화 | 입력창을 비우면 전체 목록으로 돌아온다 |
만들지 않는 것
- 바텀시트 · 모달 · 전용 검색 화면
- 최근 검색어 · 추천 검색어 · 자동완성
- 검색 필터 (기간 · 상태 등)
검색은 글자를 넣으면 목록이 걸러지는 것, 그 이상이 아니다.
3.4 URL 파라미터
정렬만 URL에 담는다. 검색어는 화면 상태로만 관리한다.
잘못된 정렬 값은 조용히 기본값으로 처리한다. 오류를 노출하지 않는다.
3.5 열람 권한
모든 관계가 동일하게 열람한다. 탐색 화면에는 관계에 따라 달라지는 요소가 없다.
| 대상 | 열람 |
|---|---|
| 비회원 | O |
| 주최자·참여자·방문자 | O |
단, 우측 하단 + 버튼(경매 등록) 은 로그인 사용자에게만 노출한다 (F1).
3.6 상태 표시 규칙
| 상태 | 표시 |
|---|---|
| 진행중 | 기본 강조색(블루) 배지, 남은 시간 표시 |
| 마감 임박 | 경고색(레드) 배지, 남은 시간 강조 |
| 마감됨 | 회색 처리 + 카드에 마감 표시 |
레드는 마감 임박이라는 경고 의미로만 사용한다. 사용자 유형 표시에는 쓰지 않는다.
4. 예외 처리
| 상황 | 처리 |
|---|---|
| 검색 결과 0건 | "검색 결과가 없어요" 빈 상태를 표시하고, 검색어를 지우는 동작을 함께 제공한다 |
| 등록된 경매 0건 | "아직 등록된 경매가 없어요 / 새로운 경매가 등록되면 알려드릴게요" 빈 상태를 표시한다 |
| 목록 조회 실패 | 에러 상태와 재시도 버튼을 제공한다. 빈 목록으로 위장하지 않는다 |
| 홈 마감 임박 영역 조회 실패 | 해당 영역만 숨기고 전체 목록은 정상 노출한다 |
| 마감 임박 경매가 0건 | 해당 영역을 아예 숨긴다. 빈 상태를 따로 그리지 않는다 |
| 이미지 로드 실패 | 대체 이미지를 표시한다. 카드 레이아웃은 무너지지 않는다 |
| 잘못된 정렬 파라미터 | 3.4에 따라 조용히 기본값으로 처리한다. 에러를 노출하지 않는다 |
| 검색 중 정렬 변경 | 검색어를 유지한 채 정렬만 바뀐다. 검색이 초기화되지 않는다 |
| 존재하지 않는 경매 상세 진입 | "경매를 찾을 수 없습니다" 안내 후 목록으로 이동하는 경로를 제공한다 |
| 마감된 경매 상세 진입 | 열람은 허용하되 마감 오버레이를 표시하고 참여 액션을 모두 차단한다 |
| 추가 로딩(페이지네이션) 실패 | 이미 불러온 목록은 유지하고, 하단에 재시도만 표시한다 |
5. 완료 조건
| # | 조건 |
|---|---|
| 1 | 비회원이 홈·목록·경매 상세를 로그인 없이 열람할 수 있다 |
| 2 | 탐색 화면에 관계에 따라 달라지는 요소가 없다 (+ 버튼 제외) |
| 3 | 정렬 3종과 제목 검색이 동작하고, 정렬만 URL에 반영된다 |
| 3-1 | 검색에 바텀시트·모달·자동완성·최근 검색어가 없다 |
| 4 | 잘못된 정렬 파라미터가 기본값으로 교정된다 |
| 5 | 결과 0건과 조회 실패가 서로 다른 화면으로 구분되어 표시된다 |
| 6 | 마감 임박 표시에 레드가 쓰이고, 그 외 용도로는 쓰이지 않는다 |
| 7 | 홈이 마감 임박 + 전체 목록 두 영역으로만 구성된다 |
| 8 | 인기순 정렬이 모인 사연 수 기준으로 동작한다 |