โ Obsidian ๋ธ๋ก๊ทธ ๋ฐฐํฌ
1. ํ๋ก์ ํธ ๊ฐ์
Claude Code๋ฅผ ํ์ฉํด Obsidian ๊ธฐ๋ฐ ๊ธฐ์ ๋ธ๋ก๊ทธ๋ฅผ ๊ตฌ์ถํ๊ณ ์๋ ๋ฐฐํฌ ํ์ดํ๋ผ์ธ์ ์์ฑํ ํ๋ก์ ํธ.
Obsidian์์ ๋งํฌ๋ค์ด์ผ๋ก ๊ธ์ ์์ฑํ๋ฉด GitHub Actions๊ฐ ์๋์ผ๋ก ๊ฐ์งํด Quartz 4๋ก ๋น๋ํ๊ณ Cloudflare Pages์ ๋ฐฐํฌํ๋ค. ๊ธ์ฐ๊ธฐ ์ด์ธ์ ๋ชจ๋ ๊ณผ์ ์ด ์๋ํ๋์ด ์๋ค.
๋ฐฐํฌ ์ฃผ์: viakiro.com
2. ์ํคํ ์ณ ๊ตฌ์๋
flowchart TD A([Obsidian ํธ์ง๊ธฐ]) -->|ํ์ผ ์ ์ฅ| B[Obsidian Git ํ๋ฌ๊ทธ์ธ] B -->|30๋ถ ์๋ commit| C[(Local Git)] C -->|์๋ push| D[GitHub ์ ์ฅ์] D -->|push ์ด๋ฒคํธ| E[GitHub Actions] E -->|ํธ๋ฆฌ๊ฑฐ| F[Quartz 4] F -->|์ ์ ์ฌ์ดํธ ์์ฑ| G[Cloudflare Pages] G -->|CDN ์ ํ| H([viakiro.com]) I[Cloudflare R2] -.->|์ด๋ฏธ์ง URL| A J[Giscus] -.->|๋๊ธ| H
3. ์ฃผ์ ๊ธฐ๋ฅ ์ ์
| ๊ธฐ๋ฅ | ์ค๋ช |
|---|---|
| ์๋ commit | Obsidian Git์ด 30๋ถ ์ฃผ๊ธฐ๋ก ๋ณ๊ฒฝ์ฌํญ์ ์๋ commit |
| ์๋ push | Cloudflare Pages ๋ฌด๋ฃ ๋น๋(์ 500ํ) ๋ณดํธ๋ฅผ ์ํด push๋ ์๋ ์คํ |
| Draft ๊ด๋ฆฌ | frontmatter draft: true๋ก ์์ฑ ์ค์ธ ๊ธ์ ๋น๋์์ ์ ์ธ |
| ์ด๋ฏธ์ง ํธ์คํ | Cloudflare R2์ ์ ๋ก๋ ํ ํผ๋ธ๋ฆญ URL๋ก ๊ต์ฒด (Git ์ ์ฅ์์ ๋ฐ์ด๋๋ฆฌ ๋ฏธํฌํจ) |
| ์๋ ๋ฐฐํฌ | content/** ๋ณ๊ฒฝ ๊ฐ์ง ์ GitHub Actions โ Quartz ๋น๋ โ Cloudflare Pages ๋ฐฐํฌ |
| ๋๊ธ | Giscus (GitHub Discussions ๊ธฐ๋ฐ) |
4. ์คํ ์ ์
4-1. ๊ธฐ์ ์คํ
| ์ญํ | ๊ธฐ์ |
|---|---|
| ํธ์ง๊ธฐ | Obsidian |
| ์ ์ ์ฌ์ดํธ ์์ฑ๊ธฐ | Quartz 4 (Preact ๊ธฐ๋ฐ) |
| ํธ์คํ | Cloudflare Pages (๋ฌด๋ฃ ํฐ์ด) |
| CI/CD | GitHub Actions |
| ์ด๋ฏธ์ง ์คํ ๋ฆฌ์ง | Cloudflare R2 (egress ๋ฌด๋ฃ) |
| ๋๊ธ | Giscus (GitHub Discussions) |
4-2. Obsidian ํ๋ฌ๊ทธ์ธ
| ํ๋ฌ๊ทธ์ธ | ์ฉ๋ |
|---|---|
| Obsidian Git | 30๋ถ ์๋ commit + ์๋ push |
| Templater | ๊ธ/ํด๋ index ํ ํ๋ฆฟ ์๋ ์์ฑ |
| Image Upload Toolkit | ์ด๋ฏธ์ง โ R2 ์ ๋ก๋ (์๋ ํธ๋ฆฌ๊ฑฐ) |
4-3. ์ฝํ ์ธ ๊ท์น
content/root์ ํ์ผ ์ง์ ์ ์ฅ ๊ธ์ง โ ๋ฐ๋์ ์นดํ ๊ณ ๋ฆฌ ํด๋ ์์ ์ ์ฅ- ํ์ผ๋ช ์ ์๋ฌธ kebab-case (URL slug๊ฐ ๋จ)
- frontmatter ํ์ ํ๋:
title,date,tags,draft
