Skip to content

feat: show 함께 되는 시간 as a day-by-hour overlap map - #34

Merged
sexypoo merged 1 commit into
mainfrom
feat/overlap-map
Oct 17, 2026
Merged

sexypoo merged 1 commit into
mainfrom
feat/overlap-map

Conversation

@sexypoo

@sexypoo sexypoo commented Oct 17, 2026

Copy link
Copy Markdown
Owner

왜

"함께 되는 시간"은 이 앱의 핵심인데 화면은 설정 폼처럼 보였고, 정보 구조도 문제가 있었습니다.

  • 서버가 30분씩 겹쳐 자른 후보를 앞에서부터 30개만 보내서, "1시간"으로 찾으면 02:00–03:00, 02:30–03:30… 거의 같은 카드가 줄지어 나오고 2주를 찾아도 첫날만 보였습니다.
  • 검색은 한국 시간인데 결과는 기기 시간대로 표시돼, 해외 기기에서는 09–22시로 찾았는데 02:00이 나왔습니다.

무엇

  • API: GET /api/groups/{id}/availability/blocks 추가. 같은 사람들이 계속 되는 30분 구간을 하나로 합쳐 시간순으로 돌려줍니다 (최소 시간보다 짧은 덩어리는 제외). 기존 /availability는 그대로.
  • 화면:
    • 맨 위 카드: 모두 되는 가장 빠른 시간(또는 고른 구간)을 크게, 되는 사람 얼굴(아이콘처럼 겹친 사각형)과 "3명 중 2명이 돼요. ○○님은 안 돼요." + 이 시간으로 잡기
    • 아래 날짜 × 시간 지도: 기간 전체를 한눈에. 모두 되는 구간은 앱 아이콘의 청록→파랑 그라데이션(하루 전체 폭 기준으로 이어짐), 일부만 되는 구간은 되는 사람이 많을수록 진하게. 구간을 누르면 위 카드가 바뀌고, 휴대폰에서는 카드가 화면 밖이면 올려 보여줍니다.
    • 토·일 색 구분, 휴대폰 구간 높이 28px(트랙 36px), 키보드 포커스, aria-pressed/aria-label(누가 되는지 포함), reduced-motion 시 즉시 스크롤
    • 패널 안 시간은 항상 한국 시간 (lib/seoul-time.ts)
  • 안 쓰게 된 후보 목록 CSS 제거

검증

  • API 테스트 143개 통과 (새 테스트 2개: 같은 사람 구간 병합·누군가 바빠지면 분리 / 최소 시간보다 짧은 구간 제외)
  • 웹 단위 테스트 10개 통과, 한국·유럽 시간대 둘 다
  • typecheck · build 통과
  • 로컬 스택 + 데모 계정으로 데스크톱(1280)·휴대폰(375)에서 확인: 지도 표시, 구간 선택, 카드 갱신·스크롤, "이 시간으로 잡기" → 그룹·1시간이 채워진 일정 창

범위 밖

  • 일정 창·주간 캘린더는 여전히 기기 시간대로 표시합니다. 해외 멤버를 위한 시간대 정책은 별도 이슈(CAL-015)로.

🤖 Generated with Claude Code

The panel listed up to 30 near-identical one-hour candidates sliding by
30 minutes, so a two-week search only ever showed the first day. A new
/availability/blocks endpoint merges runs where the same people are free,
and the panel draws the whole period as a map: everyone-free windows in
the app icon's teal-to-blue overlap, partial windows shaded by how many
can come. Picking a window shows who is in and who is out, with one
button to book it.

Times in the panel are now always Korea time, matching the search, so a
member abroad no longer sees "02:00" for a 9am-10pm search.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@vercel

vercel Bot commented Oct 17, 2026 •

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
toogeduler Ready Ready Preview Oct 17, 2026 9:51pm UTC

@sexypoo
sexypoo merged commit ccea687 into main Oct 17, 2026
4 checks passed

This branch was successfully deployed

1 active deployment
Preview — 828d27c7 Deployed Oct 17, 2026 by vercel[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant