이 블로그는 Claude Code와 함께 약 5분 만에 만들어졌습니다.
어떤 과정을 거쳤는지 타임라인으로 기록해둡니다.


타임라인

① 요구사항 정의

“Hugo 블로그 만들어줘 — 블로그명: 영어 한문장”

딱 한 줄의 요청으로 시작했습니다.


② 사전 조건 확인

작업에 앞서 세 가지를 점검했습니다.

hugo version   # Hugo v0.161.1 (Homebrew)
gh auth status # GitHub 로그인 확인 (jeonck)
git --version  # Git 2.39.5

세 가지 모두 준비되어 있었습니다.


③ Hugo 사이트 초기화

hugo new site . --force

현재 디렉토리(one-sentence)에 Hugo 프로젝트 구조를 생성했습니다.
디렉토리 이름이 블로그명 “한문장"과 딱 맞아 별도 폴더를 만들지 않았습니다.


④ PaperMod 테마 추가

git init
git submodule add --depth=1 \
  https://github.com/adityatelange/hugo-PaperMod.git themes/PaperMod

Hugo에서 가장 인기 있는 테마 중 하나인 PaperMod를 서브모듈로 추가했습니다.
서브모듈로 관리하면 GitHub Actions에서도 그대로 사용할 수 있습니다.


⑤ hugo.toml 설정

baseURL = 'https://jeonck.github.io/one-sentence/'
locale = 'ko-kr'
title = '영어 한문장'
theme = 'PaperMod'

[outputs]
  home = ['HTML', 'RSS', 'JSON']  # JSON이 있어야 검색 기능 작동

주요 포인트:

설정이유
locale 사용languageCode는 Hugo v0.158.0부터 deprecated
[[params.socialIcons]] 배열 문법[params.socialIcons] 선행 시 빌드 오류 발생
outputsJSON 포함검색 페이지(/search/)가 이 JSON을 인덱스로 사용

⑥ 콘텐츠 파일 생성

검색 페이지 (content/search/index.md)
검색 기능을 활성화하기 위한 필수 파일입니다.

첫 번째 포스트 (content/posts/첫번째-포스트.md)
날짜를 2026-05-20T00:00:00+09:00 형태로 명시했습니다.
2026-05-20처럼 날짜만 쓰면 UTC 기준 자정으로 해석되어
KST(UTC+9)에서는 미래 포스트로 분류되어 빌드에서 제외됩니다.


⑦ GitHub Actions 워크플로 작성

.github/workflows/deploy.yml

- uses: actions/checkout@v4
  with:
    submodules: true   # 이 줄이 없으면 테마 디렉토리가 비어 빌드 실패
    fetch-depth: 0

submodules: true가 핵심입니다.
이 옵션이 없으면 GitHub Actions 서버에서 themes/PaperMod가 빈 폴더로 남아
스타일 없는 깨진 화면이 배포됩니다.


⑧ 로컬 빌드 검증

hugo --minify
hugo list all
Pages  │ 17
Total in 80 ms

에러 없이 빌드 성공.
hugo list all로 포스트가 실제로 인덱싱됐는지도 확인했습니다.


⑨ GitHub 리포 생성 및 푸시

gh repo create one-sentence --public \
  --description "영어 한문장 - 하루 한 문장으로 배우는 영어"
git remote add origin https://github.com/jeonck/one-sentence.git
git push -u origin main

⑩ GitHub Pages 소스 설정

gh api repos/jeonck/one-sentence/pages \
  --method POST --field build_type=workflow

GitHub Pages의 기본 소스는 브랜치 방식입니다.
이 명령 없이 push만 하면 워크플로가 성공해도 페이지가 뜨지 않습니다.
반드시 build_type=workflow로 명시적으로 설정해야 합니다.


⑪ 배포 완료

✓ build  in 12s
✓ deploy in  8s

총 소요 시간: 약 20초 (GitHub Actions 기준)


최종 결과

항목내용
블로그 URLhttps://jeonck.github.io/one-sentence/
테마PaperMod
배포 방식GitHub Actions (main 브랜치 push 시 자동)
검색내장 검색 지원
모드라이트 / 다크 / 자동

앞으로 이 블로그에는 하루 한 문장씩 영어 표현을 기록해나갈 예정입니다. 🙌