Demo Websites: English | Korean
๋ธ๋ก๊ทธ๋ฅผ ์ง์ ์ด์ํ๋ฉด์ ์กฐ๊ธ์ฉ ๊ทธ๋ ค๋ดค๋ ์ด์์ ์ธ ๊ฐ๋ฐ ๋ธ๋ก๊ทธ ํ
๋ง๋ฅผ Gatsby๋ฅผ ํตํด ๋ง๋ค์ด๋ณด๊ฒ ๋์์ต๋๋ค.
์ด ํ
๋ง๊ฐ ๋ธ๋ก๊ทธ๋ฅผ ์ด์ํ๊ณ ์ ํ์๋ ๋ถ๋ค์๊ฒ ์์ ์ ์ด์ผ๊ธฐ๋ฅผ ์ ๋ด์ ์ ์๋ ๊ณต๊ฐ์ด ๋์์ผ๋ฉด ์ข๊ฒ ์ต๋๋ค.๐
๋ธ๋ก๊ทธ ํ ๋ง๊ฐ ๋ง์ ๋์ จ๋ค๋ฉด ์๋ ๊ณผ์ ์ ํตํด ์์ ์ ๋ธ๋ก๊ทธ๋ฅผ ๋ง๋ค์ด๋ณด์๊ธธ ๋ฐ๋๋๋ค!
ํน์ ๋ง๋์๋ ๊ณผ์ ์์ ๊ถ๊ธํ์ ์ ์ด๋ ์ด๋ ค์์ด ์์ผ์๋ค๋ฉด ์ด์๋ฅผ ํตํด ๋ฌธ์ ๋จ๊ฒจ์ฃผ์ธ์!
โญ๏ธ๋ ๋ธ๋ก๊ทธ ์ด์์ ํฐ ํ์ด ๋ฉ๋๋ค!๐
- ๐ ๋ฏธ๋ชจ์ง์ ๋ฌธ์ ์ ๋๋ฉ์ด์ ๋ฅผ ํตํ ์๊ธฐ ์๊ฐ
- ๐ ํฌ์คํ ๊ฒ์ ์ง์
- ๐ ๋คํฌ๋ชจ๋ ์ง์
- ๐ ์ฝ๋ ํ์ด๋ผ์ดํ ์ง์
- ๐ ๊ธ ๋ชฉ์ฐจ ์๋ ์์ฑ(ToC)
- ๐ ๊ธ ์กฐํ์ ํ์
- ๐ฌ Utterances ๋๊ธ ๊ธฐ๋ฅ ์ง์
- โ๏ธ meta-config๋ฅผ ํตํ ์ธ๋ถ ์ค์ ๊ฐ๋ฅ
- ๐จโ๐ป About Page ๋ด์ฉ ๋ณ๊ฒฝ ๊ฐ๋ฅ
- ๐ Posts Page ์๋ ์์ฑ
- ๐ sitemap.xml, robots.txt ์๋ ์์ฑ
- ๐ Google Analytics ์ง์
- ๐งข Emoji ์ง์
Github Page๋ Netlify ์ค ์ํ์๋ ๋ฐฐํฌ ํ๊ฒฝ์ ๋ฐ๋ผ ๋ค์ ๊ณผ์ ์ ์งํํ์๋ฉด ๋น ๋ฅด๊ฒ ๋ธ๋ก๊ทธ๋ฅผ ๋ง๋์ค ์ ์์ต๋๋ค.
๊นํ ํ์ด์ง๋ฅผ ํตํด ๋ธ๋ก๊ทธ๋ฅผ ๋ง๋์๋ค๋ฉด ์๋ ๊ธ์ ์ฐธ๊ณ ํด์ฃผ์ธ์!
Gatsby ํ
๋ง๋ก GitHub Blog ๋ง๋ค๊ธฐ
์๋ ๋ฒํผ์ ํ์ฉํ๋ฉด ๊ฐ์ธ ๊ณ์ ์ zoomkoding-gatsby-blog
๋ฅผ ์ฌ์ฉํ๊ณ ์๋ Repository ์์ฑ๊ณผ Netlify์ ๋ฐฐํฌ๋ฅผ ๋์์ ์งํํ ์ ์์ต๋๋ค. ์ดํ์, ์์ฑ๋ Repository๋ฅผ cloneํฉ๋๋ค.
์๋ ๋ช ๋ น์ด๋ฅผ ์คํํ์ฌ ๋ก์ปฌ ํ๊ฒฝ์ ๋ธ๋ก๊ทธ๋ฅผ ์คํํฉ๋๋ค.
# Install dependencies
$ npm install
# Start development server
$ npm start
์ ๋ช ๋ น์ด๊ฐ ๋ฌธ์ ์์ด ์คํ๋๋ค๋ฉด http://localhost:8000์์ ๋ธ๋ก๊ทธ๋ฅผ ํ์ธํ์ค ์ ์์ต๋๋ค.
์์ ๊ณผ์ ์ ๋ค ์งํํ์
จ๋ค๋ฉด ๋ฐฐํฌ์ ๊ฐ๋ฐ ํ๊ฒฝ์ด ์ธํ
์ด ๋๋ฌ์ต๋๋ค! ๐
์ด์ ๋ธ๋ก๊ทธ ์ ๋ณด๋ฅผ ์
๋ ฅํ๊ฒ ๋๋ฉด ๋๋ง์ ๋ธ๋ก๊ทธ๊ฐ ๋ง๋ค์ด์ง๊ฒ ๋ฉ๋๋ค. ์ด๋ฅผ ์ํด gatsby-meta-config.js
์ ์๋ ์ฌ๋ฌ๊ฐ๋ค์ ๋ณ๊ฒฝํด์ค๋๋ค.
title: '' // zoomkoding.com
description: '' // ์ค์ฝ๋ฉ์ ๊ฐ๋ฐ์ผ๊ธฐ
language: 'ko', // 'ko', 'en' (์์ด ๋ฒ์ ๋ ์ง์ํ๊ณ ์์ต๋๋ค.)
siteUrl: '' // https://www.zoomkoding.com
ogImage: '/og-image.png', // ๊ณต์ ํ ๋ ๋ณด์ด๋ ๋ฏธ๋ฆฌ๋ณด๊ธฐ ์ด๋ฏธ์ง๋ก '/static' ํ์์ ๋ฃ๊ณ ์ถ์ ์ด๋ฏธ์ง๋ฅผ ์ถ๊ฐํ์๋ฉด ๋ฉ๋๋ค.
๋ธ๋ก๊ทธ ๊ธ๋ค์ ๋๊ธ์ ๋ฌ ์ ์๊ธธ ์ํ์ ๋ค๋ฉด utterances๋ฅผ ํตํด์ ์ด๋ฅผ ์ค์ ํ์ค ์ ์์ต๋๋ค.
๐ฆ utterances ์ฌ์ฉ๋ฐฉ๋ฒ์ ๋งํฌ๋ฅผ ์ฐธ๊ณ ํด์ฃผ์ธ์!
comments: {
utterances: {
repo: '' // zoomkoding/zoomkoding-gatsby-blog
},
}
๊ธ์ด์ด(author)์ ์
๋ ฅํ์ ์ ๋ณด๋ ํํ์ด์ง์ about ํ์ด์ง ์๋จ์ ์๋ ๊ธ์ด์ด๋ฅผ ์๊ฐํ๋ ์น์
์ธ bio์์ ์ฌ์ฉ๋ฉ๋๋ค. description์ ์์ ์ ์ค๋ช
ํ๋ ๋ฌธ๊ตฌ๋ค์ ๋ฃ์ผ๋ฉด ์ ๋๋ฉ์ด์
์ผ๋ก ๋ณด์ฌ์ง๊ฒ ๋ฉ๋๋ค. bio์ ๋ค์ด๊ฐ๋ ์ด๋ฏธ์ง๋ฅผ ๋ฐ๊พธ์๋ ค๋ฉด assets
์ ์ํ์๋ ํ์ผ์ ์ถ๊ฐํ์๊ณ ํ์ผ์ ์ด๋ฆ์ thumbnail์ ๋ฃ์ด์ฃผ์๋ฉด ๋ฉ๋๋ค.(gif๋ ์ง์ํฉ๋๋ค!)
์์ดํฐ ๋ฏธ๋ชจํฐ์ฝ์ผ๋ก thumbnail์ ๋ง๋๋ ๋ฐฉ๋ฒ์ด ๊ถ๊ธํ์๋ฉด ์ด ๊ธ์ ์ฐธ๊ณ ํด์ฃผ์ธ์!
๐ค ์์์ ์ค์ ํ ์ธ์ด์ ๋ฐ๋ผ description์ ํฌ๋งท์ด ๋ฌ๋ผ์ง๋๋ค.
author: {
name: '์ ์งํ',
bio: {
role: '๊ฐ๋ฐ์',
description: ['์ฌ๋์ ๊ฐ์น๋ฅผ ๋๋', '๋ฅ๋์ ์ผ๋ก ์ผํ๋', '์ด๋ก์ด ๊ฒ์ ๋ง๋๋'],
thumbnail: `zoomkoding.gif`,
},
social: {
github: 'https://github.com/zoomKoding',
linkedIn: 'https://www.linkedin.com/in/jinhyeok-jeong-800871192',
email: '[email protected]',
},
},
about ํ์ด์ง ๋ํ gatsby-meta-config.js๋ฅผ ํตํด ์์ฑ๋ฉ๋๋ค. about ํ์์ ์๋ timestamps์ projects์ ๊ฐ๊ฐ ์ ๋ณด๋ฅผ ์ ๋ ฅํ์๋ฉด about ํ์ด์ง๊ฐ ์๋ ์์ฑ๋ฉ๋๋ค.
์๋์ ๊ฐ์ด ๊ฐ timestamp ์ ๋ณด๋ฅผ ๋ฐฐ์ด๋ก ์ ๊ณตํด์ฃผ์๋ฉด ์ ๋ ฅํ์ ์์์ ๋ง์ถฐ์ timestamps section์ ๋ณด์ฌ์ง๊ฒ ๋ฉ๋๋ค.
links์ ํด๋น ์ ๋ณด๊ฐ ์๋ค๋ฉด ์๋ตํด๋ ๋ฉ๋๋ค.
{
date: '2021.02 ~',
activity: '๊ฐ์ธ ๋ธ๋ก๊ทธ ๊ฐ๋ฐ ๋ฐ ์ด์',
links: {
post: '/gatsby-starter-zoomkoding-introduction',
github: 'https://github.com/zoomkoding/zoomkoding-gatsby-blog',
demo: 'https://www.zoomkoding.com',
},
},
๋ง์ฐฌ๊ฐ์ง๋ก ๊ฐ project ์ ๋ณด๋ฅผ ๋ฐฐ์ด๋ก ์ ๊ณตํด์ฃผ์๋ฉด ์ ๋ ฅํ์ ์์์ ๋ง์ถฐ์ projects section์ ๋ณด์ฌ์ง๊ฒ ๋ฉ๋๋ค.
{
title: '๊ฐ๋ฐ ๋ธ๋ก๊ทธ ํ
๋ง ๊ฐ๋ฐ',
description:
'๊ฐ๋ฐ ๋ธ๋ก๊ทธ๋ฅผ ์ด์ํ๋ ๊ธฐ๊ฐ์ด ์กฐ๊ธ์ฉ ๋์ด๋๊ณ ์ ์ ๋ง์ ์๊ฐ๊ณผ ๊ฒฝํ์ด ๋ธ๋ก๊ทธ์ ์์๊ฐ๋ฉด์ ์ ์ด์ผ๊ธฐ๋ฅผ ๋ด๊ณ ์๋ ๋ธ๋ก๊ทธ๋ฅผ ์ง์ ๋ง๋ค์ด๋ณด๊ณ ์ถ๊ฒ ๋์์ต๋๋ค. ๊ทธ๋์ ์ฌ๋ฌ ๊ฐ๋ฐ ๋ธ๋ก๊ทธ๋ฅผ ๋ณด๋ฉด์ ์ข์๋ ๋ถ๋ถ๊ณผ ๋ถํธํ๋ ๋ถ๋ถ๋ค์ ๋ฐํ์ผ๋ก ๋ ํผ๋ฐ์ค๋ฅผ ์ฐธ๊ณ ํ์ฌ ์ง์ ๋ธ๋ก๊ทธ ํ
๋ง๋ฅผ ๋ง๋ค๊ฒ ๋์์ต๋๋ค.',
techStack: ['gatsby', 'react'],
thumbnailUrl: 'blog.png',
links: {
post: '/gatsby-starter-zoomkoding-introduction',
github: 'https://github.com/zoomkoding/zoomkoding-gatsby-blog',
demo: 'https://www.zoomkoding.com',
}
}
๊ทธ๋ ๊ฒ ๋ด์ฉ์ ๋ฌธ์ ์์ด ์ ๋ ฅํ์ จ๋ค๋ฉด ๋๋ง์ ๋ธ๋ก๊ทธ๊ฐ ํ์ํ ๊ฒ์ ํ์ธํ์ค ์ ์์ต๋๋ค.๐
๋ณ๋์ฌํญ์ ์คํ ์ค์ธ ๋ธ๋ก๊ทธ์์ ํ์ธํ์๋ ค๋ฉด
npm start
๋ฅผ ํตํด ์ฌ์คํํด์ฃผ์ธ์!
๋ณธ๊ฒฉ์ ์ผ๋ก ๋ธ๋ก๊ทธ์ ๊ธ์ ์ฐ๋ ค๋ฉด /content
์๋์ ๋๋ ํ ๋ฆฌ๋ฅผ ์์ฑํ๊ณ index.md
์ markdown์ผ๋ก ์์ฑํ์๋ฉด ๋ฉ๋๋ค.
์ด ๋, ํด๋์ ์ด๋ฆ์ ๊ฒฝ๋ก๋ฅผ ์์ฑํ๋๋ฐ ๋ฉ๋๋ค.
index.md ํ์ผ์ ์๋จ์๋ ์๋์ ๊ฐ์ด emoji, title, date, author, tags, categories ์ ๋ณด๋ฅผ ์ ๊ณตํด์ผ ํฉ๋๋ค.
emoji๋ ๊ธ๋จธ๋ฆฌ์ ๋ณด์ฌ์ง๊ฒ ๋๋ฉฐ, categories๋ ๋์ด์ฐ๊ธฐ๋ก ๋๋์ด ์ฌ๋ฌ๊ฐ๋ฅผ ์ ๋ ฅํ ์ ์์ต๋๋ค.
---
emoji: ๐งข
title: Getting Started
date: '2021-03-22 23:00:00'
author: ์ค์ฝ๋ฉ
tags: tutorial
categories: tutorial
---
๊ธ์ ์ด๋ฏธ์ง๋ฅผ ์ฒจ๋ถํ๊ณ ์ถ์ผ์๋ค๋ฉด ๊ฐ์ ๋๋ ํ ๋ฆฌ์ ์ด๋ฏธ์ง ํ์ผ์ ์ถ๊ฐํ์ ์ ์๋์ ๊ฐ์ด ์ฌ์ฉํ์๋ฉด ๋ฉ๋๋ค.
![์ฌ์ง](./[์ด๋ฏธ์ง ํ์ผ๋ช
])
๊ธ์ ์ฐ์ธก์ ๋ชฉ์ฐจ๊ฐ ๋ณด์ด๊ธฐ๋ฅผ ์ํ์ ๋ค๋ฉด index.md
ํ์ผ ๋งจ ์๋์ ๋ค์ ๋ด์ฉ์ ์ถ๊ฐํ์๋ฉด ์๋์ผ๋ก ๋ชฉ์ฐจ๊ฐ ์์ฑ๋ฉ๋๋ค.
```toc
```
๊ถ๊ธํ์ ์ ์ด ์์ผ์๋ค๋ฉด ์ด์๋ก ๋จ๊ฒจ์ฃผ์๋ฉด ์ต๋ํ ๋น ๋ฅด๊ฒ ๋ต๋ณ ๋๋ฆฌ๋๋ก ํ๊ฒ ์ต๋๋ค!๐โโ๏ธ
๐ค ํน์ ํน์ ๊ธฐ๋ฅ์ด ์์ด์ ํ ๋ง ์ฌ์ฉ์ ๋ง์ค์ด์๊ฑฐ๋ ์ ์ํ๊ณ ์ถ์ผ์ ๊ธฐ๋ฅ์ด ์์ผ์๋ค๋ฉด,
๐ ์ฌ๊ธฐ์ ๋๊ธ ๋จ๊ฒจ์ฃผ์ธ์! ์ ๊ทน์ ์ผ๋ก ๋ฐ์ํ๊ฒ ์ต๋๋ค :)