Hyungjoo’s Blog

my everyday life — written mostly in Korean.

이 문서에 대해

Phase 2는 리뷰·차트·성능·SEO 등 기능 확장과 최적화에 해당하는 작업을 정리한 로그입니다. Phase 1의 기반 위에서 사용자 경험과 운영 품질을 끌어올린 구간으로 보면 됩니다.

Phase 2: Advanced Features & Optimization (Jun 2023 - Dec 2023)

Platform expansion, chart integration, and performance optimization

Review System

Review Creation

  • Built review creation page with star rating and text input
  • Implemented image upload (up to 5 images) with compression and preview
  • Added image resizing for carousel and fullscreen modal optimization
  • Integrated camera roll access for mobile devices

Review Display & Interaction

  • Created review list with infinite scroll and filter options (best reviews only)
  • Built review detail dialog with fullscreen image gallery
  • Implemented review like/unlike functionality with optimistic UI updates
  • Added comment system with nested replies (2-level threading)
  • Built comment like feature with real-time count updates
  • Implemented edit/delete for user's own reviews and comments

Review Management

  • Created "My Reviews" tab with pagination and scroll position memory
  • Built Apollo Client cache management for optimistic updates (no refetch on mutations)
  • Implemented access control with login redirect for unauthenticated actions

Banner & Promotion System

  • Built top ribbon banner with animated text carousel and close button
  • Created side floating banner with sticky positioning
  • Implemented search bar with dynamic placeholder from API
  • Built BigBanner carousel with custom pagination and swipe gestures
  • Created iframe-ready pages with postMessage height sync for legacy integration
  • Implemented banner API with locale-aware routing

Monitoring & Analytics

  • Integrated Datadog RUM for frontend monitoring and error tracking
  • Set up Google Analytics event tracking
  • Implemented Google Tag Manager integration
  • Added error boundaries with fallback UI

Hanteo Chart Integration

  • Built chart page displaying K-pop album sales rankings
  • Implemented time-based aggregation (daily, weekly, monthly, total)
  • Created date range selector with Korean timezone handling
  • Built chart product card with ranking badges and sales data
  • Integrated chart API v1 with caching and error handling
  • Developed chart-specific banner carousel and promotional sections
  • Added URL query parameter validation and logging for debugging

Main Page Enhancement

BigBanner Redesign

  • Responsive layout (82% width on mobile, full-width on desktop)
  • Custom Swiper pagination with styled bullets and fraction display
  • Added banner text overlay with gradient backgrounds

Quick Menu System

  • Grid layout with icon-based navigation
  • Spacing adjustments for visual consistency
  • Updated grayscale and primary color themes

Fullscreen Banner Modal

  • Auto-play video support
  • Cookie-based "Do not show again" functionality
  • Scheduled display based on event dates

K-Style & Content Pages

  • Built K-Style main page with curated content sections
  • Created K-Topics pages with article listings
  • Implemented content tab navigation (renamed tabs, added categories)
  • Integrated D3.js for data visualization components

Brand & Artist Management

  • Built artist/brand list page with search and filtering
  • Created brand detail pages with product carousels
    • Added signing event badges
    • Implemented sales quantity display
  • Developed underline tab component (shared UI pattern)
    • Active state styling
    • Smooth transition animations
    • Responsive tab width adjustments

Refactoring & Code Quality

  • Refactored fetcher architecture for API consistency
  • Reorganized folder structure into services-based architecture
  • Moved chart logic into useChartProductsQuery hook with state encapsulation
  • Unified product card components and removed legacy versions
  • Improved TypeScript types across all modules

SEO & Meta Management

  • Updated Next.js image configuration from domains to remotePatterns
  • Added Google Merchant Center meta tags
  • Implemented dynamic Open Graph tags for social sharing
  • Created sitemap generation for multi-locale pages

마무리

  • 여기까지가 리뷰·차트·리팩터링·SEO 중심의 확장 기록입니다. 모바일 연동·인증·푸시 등은 work_2025에서 이어집니다.
  • 성능 수치·외부 연동은 환경과 트래픽에 따라 달라질 수 있으니, 운영 지표와 함께 보는 것을 권장합니다.