chadchae.github.io 운영 매뉴얼

새 포스트 작성부터 배포까지 전체 절차 최종 갱신: 2026-06-29


0. 핵심 요약 (TL;DR)

# 1) 프로젝트 루트에서 R 콘솔 열기 → .Rprofile이 new_post() 자동 로드
new_post("새 글 제목", "posts_kr", "Research")     # 한글 글
new_post("New Post Title", "posts_en", "Research") # 영문 미러
# 2) 본문 작성 후 keywords / description 수정 → 렌더 & 배포
quarto render
git add docs
git commit -m "new article"
git push origin main

1. 사이트 개요

  • 성격: Chad(채충일, Chungil Chae) 교수 개인 학술 웹사이트
  • 생성기: Quarto (type: website, output-dir: docs, freeze: true)
  • 렌더링: R + renv (renv.lock, .Rprofile), _freeze/에 캐시
  • 테마: flatly(light) / darkly(dark) + 커스텀 SCSS
  • 배포: GitHub Pages (main 브랜치의 docs/ 서빙)
  • 도메인: https://chadchae.github.io

2. 배포 구조 (반드시 이해할 것)

  • .gitignore모든 소스(.qmd 등)를 무시하고 docs/(렌더링 HTML)만 추적한다.
    • git 추적 .qmd = 0개 / 추적 docs/ 파일 = 다수
  • 소스는 로컬에만 존재하고, 빌드된 HTML만 push된다.
  • ⚠️ 이 로컬 폴더가 유일한 원문 백업이다. 폴더 유실 시 복구 불가 → 별도 백업 권장.
  • manual.md.Rprofile도 소스이므로 git 추적 대상이 아니다 (로컬 전용).

3. 새 포스트 생성 — new_post() 헬퍼

3.1 정체

.Rprofile에 정의된 사용자 함수. 프로젝트 루트에서 R/RStudio를 켜면 자동 로드되고, 시작 시 다음 안내가 출력된다:

📝 Blog helper loaded. Usage: new_post("title", "posts_kr", "tag")

distill 패키지가 아니다. 과거 distill을 떠올렸으나 실제 워크플로는 이 자체 헬퍼다.

3.2 시그니처

new_post(title, category = "posts_kr", tags = "일반", lang = "kr")
인자 설명 기본값
title 글 제목 (슬러그·description 자동 생성에 사용) (필수)
category 대상 폴더 (아래 목록) "posts_kr"
tags front-matter categories: 항목 1개 "일반"
lang 현재 함수 본문에서 미사용 (무시됨) "kr"

3.3 사용 가능한 category 폴더

posts_kr, posts_en, posts_small_talk,
posts_research, posts_lecture, posts_consulting,
posts_product, posts_presentationandtalk,
posts_group_study, posts_project

3.4 생성 결과

new_post("새 글 제목", "posts_kr", "Research") 실행 시:

posts_kr/2026-06-29-새-글-제목/
├── 새-글-제목.qmd        # 최신 글과 동일한 full front-matter 템플릿
├── images/               # 그림 폴더 (front-matter image: images/f1.png)
└── bib/
    └── reference1.bib    # 빈 참고문헌 파일
  • 슬러그: 제목을 소문자화 + 한글 유지, 특수문자는 -로 치환
  • 날짜: 오늘(Sys.Date())
  • 인터랙티브 R이면 생성된 .qmd를 편집기에서 자동 오픈

4. 한·영 이중 발행

new_post()EN 미러를 자동 생성하지 않는다 (lang 인자 미사용). 두 번 호출한다:

new_post("보이는 것은 키우고, 사람은 줄인다", "posts_kr", "Research")
new_post("Grow What's Visible, Reduce the Workforce", "posts_en", "Research")

단독 발행도 가능 (예: 2026-04 분석 시리즈 일부는 KR 단독).


5. front-matter 작성 — 발행 전 필수 수정

new_post()가 만든 템플릿에는 placeholder가 있으므로 반드시 손본다.

항목 템플릿 기본 해야 할 일
title 입력값 그대로 OK
categories: tags 인자 1개 필요 시 추가
author: Chungil Chae / WKU / ORCID 블록 그대로 OK
description: 제목으로 채워짐 실제 요약문으로 교체
keywords: keyword1 / keyword2 실제 SEO 키워드로 교체
image: images/f1.png 대표 이미지 넣고 경로 확인
bibliography: bib/reference1.bib 인용 없으면 줄 삭제 가능
date 오늘 그대로 OK

모범 템플릿

가장 최근 글의 front-matter를 참고: posts_kr/2026-06-29-보이는것은-키우고-사람은-줄인다/보이는것은-키우고-사람은-줄인다.qmd


6. 본문 작성

  • Quarto Markdown(.qmd) 문법
  • 그림: 글 폴더의 images/에 넣고 ![](images/그림.png) 참조
  • 인용: bib/reference1.bib에 BibTeX 추가 후 [@key] 사용
  • 코드 청크 결과는 freeze: true로 캐시됨 (_freeze/)

7. 렌더링 & 배포

# 프로젝트 루트에서
quarto render            # docs/ 에 HTML 출력 (변경 없으면 생략 가능)
git add docs
git commit -m "new article"
git push origin main
  • GitHub Pages가 main 브랜치 docs/를 자동 서빙
  • update.sh도 있으나 git init/add/commit 'update'/push를 거칠게 수행 → 메시지 제어가 필요하면 위 수동 명령 권장

8. 콘텐츠 카테고리 & 연구축

카테고리 핵심 키워드
분석 / Analysis (SME DT 시리즈) 중소기업 디지털 전환, 잠재전이분석(LTA), ML/AI, 직무만족
people analytics · hr analytics HR 애널리틱스, 비즈니스 애널리틱스
Knowledge Management 지식 공유, 이론-실천
reflective / integrated essay 성찰 에세이
한해를 마치며 (small talk) 회고
  • 연구축: People/HR Analytics · 중소기업 디지털 전환 · 머신러닝 · 지식 공유 (capability upgrading 연구 라인과 직결)

9. 알려진 정리 대상


10. 주의사항 (HARD)

  • 한글 파일명/경로 사용 가능하나 한자(Hanja) 치환 금지 — 한글(Hangul)만 사용
  • git init/add/commit/push프로젝트 루트에서 (이 리포는 루트 자체가 Pages 소스)
  • 소스는 git에 없으므로 로컬 폴더를 별도 백업할 것
  • 새 글 슬러그는 가능하면 의미 명확하게, 날짜 접두사 YYYY-MM-DD- 유지

참고 파일

  • .Rprofilenew_post() 함수 정의
  • _quarto.yml — 사이트 전역 설정 (네비·사이드바·테마)
  • _project.yaml — 프로젝트 메타 (오너·URL·상태)
  • index.qmd — 홈/바이오
  • update.sh — 배포 스크립트
  • CLAUDE.md — 프로젝트 컨텍스트