개인

Python 정적 사이트 생성기 기반 포트폴리오

YAML 콘텐츠를 Pydantic으로 검증하고 Jinja2로 렌더링해 GitHub Actions로 배포하는 이 포트폴리오 사이트

수행기간 | 2026.09 ~ 2026.10

  • #Python
  • #Pydantic
  • #Jinja2
  • #pytest
  • #GitHub Actions

콘텐츠를 데이터로 관리하는 포트폴리오

Problem

  • HTML에 내용을 직접 쓰면 프로젝트가 늘어날수록 수정 범위가 커지고 오탈자나 누락을 잡기 어려움

My Role

  • 콘텐츠를 YAML로 분리하고 Pydantic 스키마로 검증해 잘못된 값은 빌드 단계에서 실패하도록 구성
  • 한국어와 영어 페이지를 같은 구조로 생성하고 페이지 단위 언어 전환 구현
  • JSON API, JSON Schema, llms.txt, sitemap을 함께 생성해 사람과 AI가 모두 읽을 수 있게 구성
  • pytest와 ruff 검사 후 GitHub Actions로 GitHub Pages에 배포

Result

  • 프로젝트, 경력, 수상을 YAML만 고쳐 추가할 수 있는 구조 완성
  • 빌드할 때 누락 이미지와 잘못된 참조를 자동으로 검출
포트폴리오 메인 화면
포트폴리오 메인 화면