๐จ๏ธ Giscus: GitHub ๊ธฐ๋ฐ์ ๋๊ธ ์์คํ
๋ธ๋ก๊ทธ๋ ๋ฌธ์ ์ฌ์ดํธ์ ๋๊ธ ์์คํ ์ ์ถ๊ฐํ๊ณ ์ถ์ง๋ง, ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ค์ ์ด๋ ์๋ฒ ๊ตฌ์ถ ์์ด ๊ฐ๋จํ๊ฒ ๊ตฌํํ๊ณ ์ถ์ผ์ ๊ฐ์?
๋ฐ๋ก Giscus๊ฐ ์ด๋ฐ ๋์ฆ๋ฅผ ์๋ฒฝํ๊ฒ ํด๊ฒฐํด์ฃผ๋ ๋๊ตฌ์ ๋๋ค. Giscus๋ GitHub Discussions๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ ๋๊ธ ์์คํ ์ผ๋ก, ๋๊ธ์ GitHub์ ์ ์ฅํ๋ฏ๋ก ์ถ๊ฐ์ ์ธ ์๋ฒ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค๊ฐ ํ์ํ์ง ์์ต๋๋ค.
์ด๋ฒ ๊ธ์์๋ Giscus์ ๊ฐ๋ , ์ฃผ์ ๊ธฐ๋ฅ, ์ฌ์ฉ๋ฒ, ๊ทธ๋ฆฌ๊ณ ์ค๋ฌด์์์ ํ์ฉ ๋ฐฉ๋ฒ์ ๋ค๋ค๋ณผ๊ฒ์!
1. Giscus๋?
๐ก GitHub Discussions ๊ธฐ๋ฐ ๋๊ธ ์์คํ
Giscus๋ GitHub Discussions API๋ฅผ ์ฌ์ฉํ์ฌ ๋๊ธ์ ๊ด๋ฆฌํ๋ ์คํ ์์ค ๋๊ธ ์์ ฏ์ ๋๋ค. ๋๊ธ ๋ฐ์ดํฐ๊ฐ GitHub Discussions์ ์ ์ฅ๋๊ธฐ ๋๋ฌธ์ ๋ณ๋์ ๋ฐฑ์๋ ์ค์ ์์ด๋ ์์ฝ๊ฒ ๊ตฌํํ ์ ์์ด์.
๐ Giscus์ ํน์ง
• ์๋ฒ๋ฆฌ์ค(Serverless): ๋ฐ์ดํฐ๋ GitHub์ ์ ์ฅ๋๋ฏ๋ก, ๋ณ๋์ ์๋ฒ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค๊ฐ ํ์ ์์ต๋๋ค.
• ์คํ ์์ค: ๋๊ตฌ๋ ๋ฌด๋ฃ๋ก ์ฌ์ฉํ๊ณ ์ปค์คํฐ๋ง์ด์ฆํ ์ ์์ต๋๋ค.
• GitHub ๊ณ์ ์ฌ์ฉ: ๋๊ธ ์์ฑ์๋ GitHub ๊ณ์ ์ผ๋ก ๋ก๊ทธ์ธํด์ผ ํฉ๋๋ค.
• ์คํธ ๋ฐฉ์ง: GitHub Discussions๋ฅผ ํ์ฉํ๊ธฐ ๋๋ฌธ์ ์คํธ ๊ณ์ ์ ํจ๊ณผ์ ์ผ๋ก ๋ฐฉ์งํ ์ ์์ต๋๋ค.
• SEO ์นํ์ : ๋๊ธ์ด GitHub Discussions์ ์ ์ฅ๋๋ฏ๋ก ๊ฒ์ ์์ง์ด ์ธ๋ฑ์ฑํ ์ ์์ต๋๋ค.
2. Giscus์ ์ฃผ์ ๊ธฐ๋ฅ
๐ ๏ธ 1) ๋๊ธ๊ณผ Discussions ๋๊ธฐํ
๋๊ธ์ GitHub Discussions์ ํน์ ์ค๋ ๋์ ์ฐ๊ฒฐ๋ฉ๋๋ค. ๋๊ธ์ด ์ถ๊ฐ๋๋ฉด ํด๋น Discussions ์ค๋ ๋์ ์๋์ผ๋ก ์ ๋ฐ์ดํธ๋ฉ๋๋ค.
๐ ๏ธ 2) ๋ฉํฐ ํ์ด์ง ์ง์
Giscus๋ ํ์ด์ง๋ณ๋ก ๊ณ ์ ํ Discussions ์ค๋ ๋๋ฅผ ์์ฑํ๊ฑฐ๋ ๊ธฐ์กด ์ค๋ ๋์ ์ฐ๊ฒฐํ ์ ์์ต๋๋ค.
๐ ๏ธ 3) ์ปค์คํฐ๋ง์ด์ง ๊ฐ๋ฅ
Giscus๋ ๋คํฌ ๋ชจ๋, ๋ค์ํ ์ธ์ด ์ง์, ๊ทธ๋ฆฌ๊ณ ์์ ฏ ์คํ์ผ ์ปค์คํฐ๋ง์ด์ง ๊ธฐ๋ฅ์ ์ ๊ณตํฉ๋๋ค.
3. Giscus ์ค์น ๋ฐ ์ค์
๐ ๏ธ 1) GitHub ์ ์ฅ์ ์์ฑ
๋จผ์ , Giscus๊ฐ ๋๊ธ์ ์ ์ฅํ GitHub Discussions๋ฅผ ํ์ฑํํด์ผ ํฉ๋๋ค.
1. GitHub ์ ์ฅ์๋ฅผ ์์ฑํ๊ฑฐ๋ ๊ธฐ์กด ์ ์ฅ์๋ฅผ ์ฌ์ฉํฉ๋๋ค.
2. ์ ์ฅ์์ Settings๋ก ์ด๋ํฉ๋๋ค.
3. Discussions ์น์ ์์ Discussions๋ฅผ ํ์ฑํํฉ๋๋ค.
๐ ๏ธ 2) Giscus ์ค์
1. Giscus ๊ณต์ ์ค์ ํ์ด์ง๋ก ์ด๋ํฉ๋๋ค.
2. ๋ค์ ์ ๋ณด๋ฅผ ์ ๋ ฅํฉ๋๋ค:
• Repository: Giscus๊ฐ ์ฐ๊ฒฐ๋ GitHub ์ ์ฅ์๋ฅผ ์ ํํฉ๋๋ค.
• Mapping: ๋๊ธ๊ณผ Discussions์ ๋งคํ ๋ฐฉ์์ ์ ํํฉ๋๋ค.
• URL: ํ์ด์ง URL ๊ธฐ์ค์ผ๋ก Discussions ์ฐ๊ฒฐ.
• Title: ํ์ด์ง ์ ๋ชฉ ๊ธฐ์ค์ผ๋ก ์ฐ๊ฒฐ.
• OG:URL: Open Graph URL์ ๊ธฐ์ค์ผ๋ก ์ฐ๊ฒฐ.
• Theme: Giscus ์์ ฏ์ ํ ๋ง๋ฅผ ์ค์ ํฉ๋๋ค.
3. Giscus ์ฝ๋ ์ค๋ํซ์ ๋ณต์ฌํฉ๋๋ค.
๐ ๏ธ 3) ์ค์น
HTML์ Giscus ์ถ๊ฐ
<div id="comments"></div>
<script src="https://giscus.app/client.js"
data-repo="username/repo"
data-repo-id="REPO_ID"
data-category="Discussions"
data-category-id="CATEGORY_ID"
data-mapping="pathname"
data-strict="0"
data-reactions-enabled="1"
data-emit-metadata="0"
data-input-position="top"
data-theme="light"
data-lang="en"
crossorigin="anonymous"
async>
</script>
Next.js์์ Giscus ์ถ๊ฐ
1. Giscus ์ปดํฌ๋ํธ ์์ฑ
import React from 'react';
const Giscus = () => (
<div id="comments">
<script
src="https://giscus.app/client.js"
data-repo="username/repo"
data-repo-id="REPO_ID"
data-category="Discussions"
data-category-id="CATEGORY_ID"
data-mapping="pathname"
data-strict="0"
data-reactions-enabled="1"
data-emit-metadata="0"
data-input-position="top"
data-theme="light"
data-lang="en"
crossorigin="anonymous"
async
></script>
</div>
);
export default Giscus;
2. ํ์ด์ง์ Giscus ์ถ๊ฐ
import Giscus from '../components/Giscus';
const BlogPost = () => (
<div>
<h1>๋ธ๋ก๊ทธ ํฌ์คํธ ์ ๋ชฉ</h1>
<p>๋ธ๋ก๊ทธ ๋ด์ฉ</p>
<Giscus />
</div>
);
export default BlogPost;
4. Giscus ํ์ฉ ์ฌ๋ก
๐ 1) ๋ธ๋ก๊ทธ ๋๊ธ
• ๋ธ๋ก๊ทธ์ ๊ฐ ํฌ์คํธ๋ง๋ค ๋ณ๋์ Discussions ์ค๋ ๋๋ฅผ ์์ฑํด ๋๊ธ์ ๊ด๋ฆฌํฉ๋๋ค.
๐ 2) ๋ฌธ์ํ ํผ๋๋ฐฑ
• ๋ฌธ์ ํ์ด์ง์ Giscus๋ฅผ ์ถ๊ฐํ์ฌ ์ฌ์ฉ์ ํผ๋๋ฐฑ์ ์ฝ๊ฒ ์์งํ ์ ์์ต๋๋ค.
๐ 3) ์ปค๋ฎค๋ํฐ ํฌ๋ผ
• Discussions์ ๋๊ธ์ ํตํฉํ์ฌ ์ฌ์ฉ์์ ์๊ฒฌ์ GitHub ํ๋ซํผ์์ ๊ด๋ฆฌํฉ๋๋ค.
5. Giscus์ ์ฅ๋จ์
๐ ์ฅ์
1. GitHub ๊ธฐ๋ฐ ๋ฐ์ดํฐ ๊ด๋ฆฌ: ๋๊ธ ๋ฐ์ดํฐ๋ฅผ GitHub Discussions์ ์ ์ฅ.
2. ๋ฌด๋ฃ ๋ฐ ์คํ ์์ค: ๋๊ตฌ๋ ์์ ๋กญ๊ฒ ์ฌ์ฉ ๊ฐ๋ฅ.
3. GitHub ๊ณ์ ์ธ์ฆ: ์คํธ ๋๊ธ ๋ฐฉ์ง.
4. SEO ์นํ์ : ๋๊ธ์ด ๊ฒ์ ์์ง์ ์ธ๋ฑ์ฑ๋ ์ ์์.
๐ ๋จ์
1. GitHub ๊ณ์ ํ์: ๋๊ธ ์์ฑ์๋ GitHub ๊ณ์ ์ด ์์ด์ผ ํจ.
2. ์ ํ๋ ์ปค์คํฐ๋ง์ด์ง: ๋์์ธ ์ปค์คํฐ๋ง์ด์ง ์ต์ ์ด ์ ํ์ .
3. ๋ฐ์ดํฐ ์์กด์ฑ: ๋ฐ์ดํฐ๊ฐ GitHub์ ์ ์ฅ๋๋ฏ๋ก ํ๋ซํผ ์์กด์ฑ์ด ์๊น.
6. Giscus vs Disqus
ํน์ง Giscus Disqus
๋ฐ์ดํฐ ์ ์ฅ ์์น GitHub Discussions Disqus ์๋ฒ
๊ฐ๊ฒฉ ๋ฌด๋ฃ ์ ๋ฃ ํ๋ ์กด์ฌ
SEO ๊ฐ๋ฅ (GitHub Discussions ๊ธฐ๋ฐ) ๊ฐ๋ฅ (HTML๋ก ๋ ๋๋ง)
์คํธ ๋ฐฉ์ง GitHub ๊ณ์ ์ธ์ฆ ๋ณ๋์ ์คํธ ํํฐ ์ ๊ณต
๊ฒฐ๋ก
Giscus๋ GitHub Discussions๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ ๊ฐ๋ณ๊ณ ๊ฐ๋ ฅํ ๋๊ธ ์์คํ ์ ๋๋ค.
์๋ฒ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ค์ ์์ด ๋๊ธ ์์คํ ์ ์ฝ๊ฒ ๊ตฌํํ๊ณ , GitHub ์ปค๋ฎค๋ํฐ์ ์์ฐ์ค๋ฝ๊ฒ ์ฐ๊ฒฐํ ์ ์๋ ์๋ฃจ์ ์ด์ฃ .
๋ธ๋ก๊ทธ, ๋ฌธ์ ์ฌ์ดํธ, ์ปค๋ฎค๋ํฐ ํฌ๋ผ ๋ฑ ๋ค์ํ ๊ณณ์ ํ์ฉํด๋ณด์ธ์.
๐ท์ ์ค์ ๊ฐ๋ฐ์๊ฐ ๋์ด๋ด ์๋น!๐ท
'Front-end > Good Front' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
๐ gray-matter: Markdown ํ์ผ์ ๋ฉํ๋ฐ์ดํฐ๋ฅผ ๋ค๋ฃจ๋ ๋ง๋ฒ ๋๊ตฌ (0) | 2025.03.05 |
---|---|
Compound Components๋? ๐ก (0) | 2025.02.23 |
๐ก ํ๋ก ํธ์๋์์ IoC๋ ๋ฌด์์ธ๊ฐ์? (0) | 2025.02.21 |