Summary
#131에서 posts/item 테이블에 image_width/image_height가 추가되었으나, 프론트엔드 대부분의 컴포넌트가 아직 하드코딩된 크기를 사용 중. DB dimension을 활용하여 CLS(Cumulative Layout Shift)를 개선해야 함.
Components to Update
Already Working
ImageCard.tsx — posts dimension 사용 중 ✅
ImageCanvas.tsx — naturalWidth/Height onLoad 사용 중 ✅
posts/[id]/page.tsx — OG meta에 dimension 사용 중 ✅
Notes
useImageDimensions 훅이 이미 존재하지만 미사용 상태 — 활용 검토
- item dimension은 PRD backfill 완료 후 사용 가능
Related
Summary
#131에서 posts/item 테이블에 image_width/image_height가 추가되었으나, 프론트엔드 대부분의 컴포넌트가 아직 하드코딩된 크기를 사용 중. DB dimension을 활용하여 CLS(Cumulative Layout Shift)를 개선해야 함.
Components to Update
ItemImage.tsx— 고정 aspect ratio (1/1, 3/4) → DB dimension 기반 동적 비율MasonryGridItem.tsx—item.aspectRatio→image_width/image_height활용GallerySection.tsx— 하드코딩h-[140px] md:h-[400px]→ 동적 높이RelatedLooksSection.tsx— 하드코딩h-[200px],h-[140px]→ 동적 높이DecodedItemsSection.tsx— 하드코딩 64x64, 140x180 → 실제 썸네일 크기FeedCard.tsx— 하드코딩aspect-[3/4]→ DB dimension 활용SavedGrid.tsx— 하드코딩aspect-[3/4]→ DB dimension 활용Already Working
ImageCard.tsx— posts dimension 사용 중 ✅ImageCanvas.tsx— naturalWidth/Height onLoad 사용 중 ✅posts/[id]/page.tsx— OG meta에 dimension 사용 중 ✅Notes
useImageDimensions훅이 이미 존재하지만 미사용 상태 — 활용 검토Related