8λ Β·416μ£ΌΒ·1,053κ°μ ν¬λλ‘ λ§λ μΈν°λν°λΈ λ‘λλ§΅.
Live: https://zerith.github.io/
- μλ³Έ
roadmap.html(PDFμ©)μ GitHub Pagesμ© μ²΄ν¬λ°μ€ ν¬λ μ¬μ΄νΈλ‘ λ³ν - μ²΄ν¬ β μλ‘κ³ μΉ¨ν΄λ μ μ§ (
localStorageμ¬μ©, λμ λΈλΌμ°μ μλ§ μ μ₯λ¨) - λ¨κ³λ³Β·μΉμ λ³ μ§νλ₯ μλ κ³μ°
- κ²μ / λ―Έμλ£λ§ 보기 / λͺ¨λ νΌμΉκΈ° β 1,000κ° λμ΄κ°λ μ ν€λ§΄
- λͺ¨λ°μΌμμλ μ λ¨
μ²μ GitHub Pages μ°λ κ±°λΌλ©΄:
- GitHub λ‘κ·ΈμΈ β New repository
- μ΄λ¦μ μ νν
zerith.github.io(μλ¬Έμ, λ μμ΄λ = zerith) - PublicμΌλ‘ λ§λ€κΈ°
- README κ°μ κ±° 체ν¬νμ§ λ§κ³ λΉμ΄μκ² μμ±
- λ§λ λ¦¬ν¬ νμ΄μ§μμ "uploading an existing file" ν΄λ¦
- μ΄ ν΄λμ
index.htmlμ λμ΄λ€ λκΈ° - μλμͺ½ "Commit changes" ν΄λ¦
- λ¦¬ν¬ β Settings β μ’μΈ‘ λ©λ΄ Pages
- Source: Deploy from a branch
- Branch:
main//(root)β Save - 1~2λΆ ν https://zerith.github.io/ μ μ μ
β οΈ μ²μ λ§λ€λ©΄ DNS λ°μμ 5~10λΆ κ±Έλ¦΄ μλ μμ. μλ‘κ³ μΉ¨ γ±γ±
git clone https://github.com/zerith/zerith.github.io.git
cd zerith.github.io
# index.html 볡μ¬ν΄μ λ£κΈ°
git add index.html
git commit -m "init: cyber roadmap"
git pushλ°©λ² A β μ΄ νμΌμ μ§μ μμ
index.htmlμ μ΄λ©΄ λ¨κ³/μ£Όμ°¨/νμ€ν¬κ° λ€ λ€μ΄μμ- κ·Έλ₯ μμ νκ³ push
λ°©λ² B β μλ³Έ markdown/htmlμμ λ€μ μμ±
- μλ³Έ
roadmap.htmlμ μμ - κ°μ΄ λ€μ΄μλ
parse_roadmap.pyβbuild_site.pyλ₯Ό λ€μ λ리면 μindex.htmlμ΄ λμ΄ - (μ΄κ±΄ λ‘컬μ Python + beautifulsoup4 κΉλ €μμ΄μΌ ν¨:
pip install beautifulsoup4)
μ²΄ν¬ μνλ μ΄ λΈλΌμ°μ μλ§ μ μ₯λΌ μμ. λ€λ₯Έ κΈ°κΈ°μμ μ΄μ΄μ νκ³ μΆκ±°λ λ°±μ νλ €λ©΄:
λΈλΌμ°μ μ½μ(F12) μ΄κ³ :
// λ°±μ
(볡μ¬ν΄μ 보κ΄)
copy(localStorage.getItem("zerith-roadmap-v1"))
// 볡μ (λΆμ¬λ£μ λ)
localStorage.setItem("zerith-roadmap-v1", 'μ¬κΈ°μ λ°±μ
νκ±° λΆμ¬λ£κΈ°')index.html μλ¨μ :root { ... } μμ λͺ¨λ μμ΄ CSS λ³μλ‘ μ 리λΌμμ.
--accent(μμ) β λ©μΈ κ°μ‘°μ--gold(골λ) β νμ¬ μ£Όμ°¨ κ°μ‘°--bg,--bg-2,--bg-3β λ°°κ²½ λ¨κ³--warnββ οΈ μ
section--currentν΄λμ€κ° λΆμ μΉμ μ΄ "μ§κΈ μ΄ μ£Ό" β μ§κΈμ W0- ν μ£Όκ° μ§λλ©΄
index.htmlμμdata-section="s1_sec0"(W0) ν΄λμ€λ₯Ό λΌκ³ , λ€μ μ£Όμ λΆμ΄λ©΄ λ¨ - λλ μλν: λ§€μ£Ό μλμΌλ‘ currentWeekκ° λ°λκ² νλ €λ©΄ JSμμ λ μ§ κ³μ° λ‘μ§ μΆκ° κ°λ₯ (μνλ©΄ λ§ν΄)
8λ λ€μ λλ₯Ό μν΄, μ€λ ν κ°μ§λΆν°. νμ΄ν πͺ