LC-3134 하반기 멤버십 랜딩페이지 프로토 타입 배포#2396
Merged
Hidden character warning
The head ref may contain hidden characters: "LC-3134-\ud558\ubc18\uae30-\uba64\ubc84\uc2ed-\ub79c\ub529\ud398\uc774\uc9c0-\ud504\ub85c\ud1a0-\ud0c0\uc785-\ubc30\ud3ec"
Merged
Conversation
Push 1 (기반+정적): CSS, 상수, 라우트, MembershipPage, SolutionSection, ProofSection, ReviewsSection, RoadmapSection 생성 Push 2 (인터랙티브): Countdown, HeroSection, BenefitsSection, BenefitModal, PlansSection, FinalCtaSection, FaqSection, MembershipCTAButtons 구현 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- PlansSection 6개 CTA → 결제 입력 페이지 연동 (useMembershipApply) - BenefitModal 챌린지 썸네일 갤러리 구조 정리 - Countdown·FAQ·ReviewsSection 마감/후기 영역 보강 - membership.css 섹션 스타일 확장 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
버그 수정
- 플랜 탭(펼침형/비교표) 전환 시 버튼이 사라지던 문제: 탭 패널 콘텐츠(.arow·.matrix)에서
스크롤 리빌(rv) 제거. display:none 상태에서 IntersectionObserver가 관측 못해 opacity:0으로
남던 원인 해결 (원본 시안도 탭 콘텐츠엔 rv 미사용)
- 조건부 className의 선행 공백이 prettier(tailwind 플러그인)에 의해 제거되어 클래스가 깨지던
잠재 버그: `tab${c?' on':''}` → `tab ${c?'on':''}` 형태로 포맷 안전하게 전환
- 로고 마퀴가 섹션 위에서 멈추던 문제: .proof:hover 일시정지 제거 + gap→margin-right 로
translateX(-50%) 이음새 정확히 맞춰 끊김 없는 무한 루프
이미지
- standalone HTML 매니페스트에서 18개 이미지 추출 → public/images/membership/
- BenefitModal 챌린지 갤러리(9종)·ReviewsSection 후기 스크린샷(8종) 실제 이미지 적용
API 연동 (어드민 편집 반영)
- 마감 카운트다운: useGetChallengeQuery 의 deadline 사용 (Hero·FinalCta), 미설정 시 상수 폴백
- 플랜 가격: 챌린지 priceInfo/priceList 기반으로 표시·결제 금액 산출 (어드민 가격 수정이 반영됨)
- useMembershipProgram 훅 신설. 잔여 좌석은 공개 API가 현재 인원을 노출하지 않아 상수 유지(주석)
푸터
- 글로벌 푸터 대신 컴팩트 MembershipFooter 적용(높이 축소 + 채널톡 문의하기), /membership 에서
글로벌 푸터 숨김
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- 하이드레이션 지연 중 사용자가 스크롤하면, 옵저버가 붙기 전에 지나간 .rv 요소가 영영 isIntersecting 되지 않아 opacity:0 으로 남던 문제: 관측 시점에 이미 뷰포트 위로 완전히 지나간 요소(boundingClientRect.bottom < 0)는 즉시 노출 - querySelectorAll 1회 호출로 이후 추가/교체되는 요소를 놓치던 문제: MutationObserver로 동적 추가 요소도 관측 (rAF 디바운스) - prefers-reduced-motion / IO 미지원 환경은 전부 즉시 노출 - 안전망: 화면에 보이는데 누락된 요소는 2.5초 후 강제 노출(영구히 숨는 것 방지) Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- MembershipCTAButtons: 커스텀 stickybar → ChallengeCTAButtons(DesktopApplyCTA/MobileApplyCTA) 교체 - MembershipApplySheet: PricePlanBottomSheet 래퍼 추가 (플랜 선택 시트) - HeroSection/FinalCtaSection: '지금 바로 신청' 클릭 시 PricePlanBottomSheet 오픈 - FaqSection: CSS 클래스 아코디언 → FaqDropdown 교체 (rv 애니메이션 충돌 버그 수정) - 모집기간·이용기간 문구를 API(beginning/deadline/startDate/endDate)로 동적 반영 - useMembershipProgram: beginning/startDate/endDate 필드 추가, constants 폴백 포함 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Contributor
There was a problem hiding this comment.
Code Review
이번 풀리퀘스트는 하반기 멤버십 서비스 제공을 위한 랜딩 페이지와 관련 컴포넌트, 훅, 스타일을 추가하고 결제 결과 및 레이아웃을 업데이트하는 변경사항을 포함하고 있습니다. 코드 리뷰 피드백으로는 HeroSection에서 잔여 좌석이 거꾸로 증가하는 로직 버그 수정, RoadmapSection 내 중복된 IntersectionObserver 제거를 통한 서버 컴포넌트 전환 최적화가 제안되었습니다. 또한, 결제 결과 페이지에서 멤버십 판별 방식을 안전한 ID 비교로 변경하고, MembershipFooter에서 클라이언트 사이드 네비게이션을 위해 <a> 태그 대신 Next.js의 <Link> 컴포넌트를 사용하도록 개선할 것을 권장합니다.
Important
The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.
- 모노레포 내 멤버십 도메인(섹션·훅·CSS·이미지) 제거 → 별도 레포 (letscareer-membership-landing)로 이전, 하드코딩·토스 결제 링크로 단독화 - /membership: 전체화면 iframe + 실제 NavBar 표시 제어(스크롤 방향·모달 상태에 따라 헤더 숨김/표시)하는 MembershipEmbed 로 교체 - ConditionalLayout: /membership 은 글로벌 크롬 없이 bare 렌더 - .env.example: NEXT_PUBLIC_MEMBERSHIP_LANDING_URL(랜딩 배포 URL) 추가 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- MembershipEmbed: 랜딩이 일정 시간 안에 ready 신호를 안 보내면(네트워크 오류· 차단·URL 부재·404 등) 본 사이트 404 디자인의 오류 화면 표시 + 홈으로 이동 - order/result: 멤버십 결제가 외부(토스) 링크로 빠져 이 페이지를 안 거치므로 고아가 된 멤버십 리다이렉트 분기 제거 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
연관 작업