Skip to content

[feat] OG \uc774\ubbf8\uc9c0 + PWA \ub9e4\ub2c8\ud398\uc2a4\ud2b8 (#15)#37

Merged
peterabcd merged 1 commit into
devfrom
feat/og-pwa
Jun 7, 2026
Merged

[feat] OG \uc774\ubbf8\uc9c0 + PWA \ub9e4\ub2c8\ud398\uc2a4\ud2b8 (#15)#37
peterabcd merged 1 commit into
devfrom
feat/og-pwa

Conversation

@peterabcd

Copy link
Copy Markdown
Collaborator

closes #15

요약

  • /sessions/[id]/opengraph-image — 세션 상세 OG 이미지 (1200x630). 단체사진을 sharp 로 리사이즈해 어두운 그라디언트 배경 위에 날짜/장소/호스트 텍스트를 올린다. 사진이 없으면 텍스트만.
  • /opengraph-image — 사이트 기본 OG. 홈/로그인 등에서 사용.
  • app/manifest.ts + app/icons/[size]/route.tsx + app/icon.tsx + app/apple-icon.tsx — PWA 설치 가능 (뷰런, dark theme, standalone display).
  • lib/og-font.ts — Google Fonts 에서 Noto Sans KR Regular/Bold 를 첫 요청시 받아서 모듈 캠시. 한국어 렌더링 ☐ 대체 fallback (영문) 있음.
  • middleware.ts*opengraph-image / *twitter-image path 는 auth 우회 (카톡 교측 필수). PWA manifest/icon 등도 matcher 에서 제외.
  • app/sessions/[id]/page.tsxgenerateMetadata 에서 세션별 title/description 설정.
  • app/layout.tsx — site-level openGraph/twitter 기본값.

트레이드오프

  • OG 엔드포인트는 의도적으로 public. 회고-Week2 · 사고 시즌 2 에서 받은 기준으로, "카톡 공유 UX" 가치 > "URL 추측으로 메타데이터 노출" 위험이라 판단. /api/uploads 와 페이지는 여전히 auth 요구.

검증

  • pnpm check 통과.
  • 빌드 출력에 /icon, /apple-icon, /icons/[size], /manifest.webmanifest, /opengraph-image, /sessions/[id]/opengraph-image 라우팅 모두 생성 확인.
  • 머지 후 dev push 로 GHCR staging-* 이미지 빌드 재확인 예정.

@peterabcd peterabcd merged commit 91a9c05 into dev Jun 7, 2026
1 check passed
@peterabcd peterabcd deleted the feat/og-pwa branch June 7, 2026 07:00
@peterabcd peterabcd mentioned this pull request Jun 7, 2026
4 tasks
peterabcd added a commit that referenced this pull request Jun 7, 2026
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