diff --git a/src/app/components/HeroSection.tsx b/src/app/components/HeroSection.tsx
index c10885c..2b41042 100644
--- a/src/app/components/HeroSection.tsx
+++ b/src/app/components/HeroSection.tsx
@@ -31,6 +31,33 @@ export function HeroSection() {
iOS 개발자입니다.
+ {/* AI 활용 역량 선언 — 웹 전용 (PDF에서는 숨김) */}
+
+ 이 포트폴리오 사이트는{" "}
+
+ Claude Code
+
+ 를 활용한{" "}
+ 바이브 코딩
+ 으로 직접 만들었습니다. 기획·디자인 시스템·편집 레이아웃·PDF 자동 출력까지 AI를 도구로 활용해 빠르게 구현했습니다.{" "}
+
+ 소스 보기 →
+
+
+
{/* Actions */}
@@ -92,6 +136,19 @@ export function HeroSection() {
),
},
+ {
+ label: "Repository",
+ value: (
+
+ ShapeKim98/portfolio
+
+ ),
+ },
]}
/>
diff --git a/src/app/components/ProjectLayout.tsx b/src/app/components/ProjectLayout.tsx
index 6a7f0a9..1c2ffcc 100644
--- a/src/app/components/ProjectLayout.tsx
+++ b/src/app/components/ProjectLayout.tsx
@@ -84,12 +84,12 @@ export function ProjectCover({
data-print-keep
data-print-cover
>
-
- {/* Image — natural aspect ratio preserved, clickable for detail view */}
+
+ {/* Image — aspect fill: 자연 비율 유지, 85vh 초과분은 하단에서 잘림 */}
{/* Readable gradient overlay — kept in PDF too to match web design */}
-
+
에 .print-mode 클래스 부여
* Puppeteer 기반 PDF 추출은 이 경로를 주로 사용한다.
@@ -66,6 +72,7 @@ html.print-mode [class*="h-screen"] { height: auto !important; }
html.print-mode main { padding-left: 0 !important; padding-top: 0 !important; }
html.print-mode section[id="hero"] { min-height: 0 !important; padding-top: 24px !important; padding-bottom: 24px !important; }
html.print-mode [data-print-hide] { display: none !important; }
+html.print-mode [data-print-only] { display: inline !important; }
/* 테마 배경/장식 레이어 제거 */
html.print-mode { background: transparent !important; }