Skip to content

LC-3134 하반기 멤버십 랜딩페이지 프로토 타입 배포#2396

Merged
dusvlf111 merged 8 commits into
mainfrom
LC-3134-하반기-멤버십-랜딩페이지-프로토-타입-배포
Jun 18, 2026

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

LC-3134 하반기 멤버십 랜딩페이지 프로토 타입 배포#2396
dusvlf111 merged 8 commits into
mainfrom
LC-3134-하반기-멤버십-랜딩페이지-프로토-타입-배포

Conversation

@dusvlf111

@dusvlf111 dusvlf111 commented Jun 15, 2026

Copy link
Copy Markdown
Collaborator

연관 작업

dusvlf111 and others added 6 commits June 15, 2026 15:13
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>
@dusvlf111 dusvlf111 self-assigned this Jun 15, 2026
@github-actions github-actions Bot changed the title Lc 3134 하반기 멤버십 랜딩페이지 프로토 타입 배포 LC-3134 하반기 멤버십 랜딩페이지 프로토 타입 배포 Jun 15, 2026

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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.

Comment thread apps/web/src/domain/membership/section/HeroSection.tsx Outdated
Comment thread apps/web/src/domain/membership/section/RoadmapSection.tsx Outdated
Comment thread apps/web/src/app/(user)/order/result/page.tsx Outdated
Comment thread apps/web/src/domain/membership/MembershipFooter.tsx Outdated
dusvlf111 and others added 2 commits June 19, 2026 00:36
- 모노레포 내 멤버십 도메인(섹션·훅·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>
@dusvlf111 dusvlf111 merged commit d7b5d8a into main Jun 18, 2026
5 checks passed
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