Menginstall ExtJs
ExtJs adalah sebuah framework Javascript yang dibuat oleh Sencha yang berperan sebagai tampilan antarmuka kepada user atau pengguna. ExtJs bekerja pada sebuah browser di sisi client. Untuk membuat sebuah tampilan secara dinamis diperlukan juga sebuah pemrograman pada sisi server biasanya menggunakan bahasa yang lain. Untuk dapat bekerja menggunakan framework ini diperlukan sebuah tools atau perlengkapan yang harus diinstall dahulu pada komputer. Berikut ini adalah langkah-langkah untuk mengistall perlengkapan tersebut:
1. Repository ์์ฑํ๊ธฐ
GitHub Blog๋ฅผ ๋ง๋ค๋ ค๋ฉด Github์ Repository๋ฅผ ์์ฑํด์ผ ํฉ๋๋ค.
GitHub์ ๋ก๊ทธ์ธ ํ ๋ค์ ์ฐ์ธก ์๋จ์ ์๋ New Repository ๋ฒํผ์ ํด๋ฆญํ๋ฉด repository ์์ฑ ํ์ด์ง๋ก ์ด๋ํ๊ฒ ๋ฉ๋๋ค. ์ด ๋ Import a repository ๋ฒํผ์ ํด๋ฆญํฉ๋๋ค.
์๋ ํ์ด์ง์ ๋๋ฌํ์๋ฉด ๋ ๊ฐ์ง ์ ๋ณด๋ฅผ ๋ฃ์ด์ฃผ์ ์ผ ํ๋๋ฐ, Your old repositoryโs clone URL์๋ ์ฌ์ฉํ๊ณ ์ ํ๋ gatsby ํ ๋ง๊ฐ ์๋ repository์ ์ฃผ์๋ฅผ ๋ฃ์ด์ฃผ์๋ฉด ๋ฉ๋๋ค.
์ ๋ธ๋ก๊ทธ ํ ๋ง๋ฅผ ์ฐ๊ณ ์ถ์ผ์ ๋ถ๋ค์ ์ฌ๊ธฐ์ https://github.com/zoomKoding/zoomkoding.com๋ฅผ ๋ฃ์ด์ฃผ์ธ์!
๊ทธ๋ผ ์ด์ Repository Name์ ์ ๋ ฅํด์ค๋๋ค. ์ด ๋ ์ฃผ์ํ ์ ์ Repository๋ช ์ ๊ผญ [GitHubID].github.io๋ก ์ค์ ํ์ ์ผ ํฉ๋๋ค.
๊ทธ๋ฆฌ๊ณ Begin Import ๋ฒํผ์ ํด๋ฆญํ๊ณ ์กฐ๊ธ ๊ธฐ๋ค๋ฆฌ๋ฉด ์ ํํ์ ๋ธ๋ก๊ทธ ํ ๋ง๋ฅผ importํ Repository๊ฐ ์์ฑ๋๊ฒ ๋ฉ๋๋ค.
2. Repository ๊ฐ์ ธ์ค๊ธฐ
์ด์ ์ค์ ๋ก ์์ ํ๊ณ ๋ฐฐํฌํ ์๋๋ก ๋ด ์ปดํจํฐ(local)์ Repsitory๋ฅผ ๊ฐ์ ธ์๋ณผ ๊ฑด๋ฐ์! ๋จผ์ Repository์์ ์๋์ ๊ฐ์ด ์ด๋ก์ Code ๋ฒํผ์ ํด๋ฆญํ๋ฉด ๋งํฌ๊ฐ ๋์ค๊ฒ ๋๋๋ฐ, ์ด ๋งํฌ๋ฅผ ๋ณต์ฌํฉ๋๋ค.
๊ทธ๋ฆฌ๊ณ ์๋ ๋ช ๋ น์ด๋ฅผ ์ํํ์ฌ ๋ธ๋ก๊ทธ๋ฅผ ๋ค์ด๋ก๋ํฉ๋๋ค.
cd [Repository๋ฅผ ์ ์ฅํ ํด๋]
git clone [๋ณต์ฌํ ์ฃผ์]
3. Blog ์ค์นํ๊ธฐ
์ด์ ๋ธ๋ก๊ทธ๋ฅผ ๋์์ํฌ ์ ์๋๋ก ํจํค์ง๋ค์ ๋ค์ด๋ก๋ ํด์ผํ๋๋ฐ, ๋ค์ ๋ช ๋ น์ด๋ฅผ ์คํํ์๋ฉด ๋ฐ์ ์ ์์ต๋๋ค.
cd [Repository ์ฃผ์]
npm install
4. Blog ๋ฐฐํฌ ์ค๋นํ๊ธฐ
๊ทธ๋ฆฌ๊ณ ์ด์ Gatsby ํ ๋ง๋ฅผ GitHub ํ์ด์ง์ ์ฌ๋ฆฌ๊ธฐ ์ํด gh-pages๋ผ๋ ํจํค์ง๋ฅผ ์ค์นํด์ผ ํฉ๋๋ค. ์ค์น๋ ๋ค์ ๋ช ๋ น์ด๋ฅผ ์คํํ์๋ฉด ๋ฉ๋๋ค.
npm install gh-pages --save-dev
๊ทธ๋ฆฌ๊ณ ๋์ package.json์ ๋ค์์ ์ถ๊ฐํฉ๋๋ค.
{
"scripts": {
"deploy": "gatsby build && gh-pages -d public" // ์ถ๊ฐ
}
}
5. Blog ๋ฐฐํฌํ๊ธฐ
๋๋์ด ๋ฐฐํฌ ์ค๋น๋ ๋ค ๋๋ฌ์ต๋๋ค. ์ด์ ๋ค์ ๋ช ๋ น์ ์คํํ์๋ฉด github page์ ๋ฐฐํฌํ์ค ์ ์์ต๋๋ค.
npm run deploy
์กฐ๊ธ ๊ธฐ๋ค๋ฆฌ์ ํ์ ๋ค์๊ณผ ๊ฐ์ด Published
๋ผ๋ ๋ฉ์์ง๋ฅผ ๋ฐ์ผ์
จ๋ค๋ฉด ๋ฐฐํฌ๋ ์ ๋๋ฌ์ต๋๋ค!
๐โโ๏ธ ์ ๋ธ๋ก๊ทธ ํ ํ๋ฆฟ์ ์ฌ์ฉํ์๋ ๋ถ๋ค์
node ๋ฒ์ ์ด 14 ์ด์
์ด์ด์ผ ํฉ๋๋ค. node -v๋ฅผ ํตํด node ๋ฒ์ ์ ํ์ธํ์ ํ ๋ฎ์ ๋ฒ์ ์ด๋ผ๋ฉด ์ ๊ทธ๋ ์ด๋๋ฅผ ์งํํด์ฃผ์ธ์!
๐ก ํน์ ๊ทธ ์ธ์ ๋ค๋ฅธ ์๋ฌ๊ฐ ๋ฐ์ํ์ ๋ค๋ฉด ์๋์ ๋๊ธ๋ก ์๋ฌ ๋ด์ฉ์ ์๋ ค์ฃผ์ธ์!
6. Repository Source Branch ๋ณ๊ฒฝํ๊ธฐ
๋ง์ง๋ง์ผ๋ก GitHub ํ์ด์ง๊ฐ ์๋ํ๋ ค๋ฉด GitHub์ Repository ์ค์ ์์ ๋ฐฐํฌ ํ Branch๋ฅผ ์ ํํด์ผ ํฉ๋๋ค. ์ด๋ฅผ ์ํด์ Repository์ ์๋ Settings๋ฅผ ํด๋ฆญํ๊ณ ์ฃ์ธก ๋ฉ๋ด์์ Pages๋ฅผ ํด๋ฆญํ์ฌ Github Pages ์ค์ ํ์ด์ง๋ก ์ด๋ํฉ๋๋ค.
์ฌ๊ธฐ์ Source์ ์๋ Branch๋ฅผ master(main)์์ gh-pages๋ก ๋ณ๊ฒฝํ ํ์ ์ ์ฅํฉ๋๋ค.
7. ๋ฐฐํฌ๋ ํ์ด์ง ํ์ธํ๊ธฐ
์ด์ ์ค์ ๋ก ์ ๋ฐฐํฌ๊ฐ ๋์๋์ง ํ์ธํด๋ด ์๋ค. ์ฌํ๊น์ง ๋ฌธ์ ๊ฐ ์์ผ์ จ๋ค๋ฉด [GitHubID].github.io์ ์ ๊ทผํ์ ๋ ๋ธ๋ก๊ทธ๊ฐ ์ ๋ณด์ด๋ ๊ฒ์ ํ์ธํ์ค ์ ์์ผ์ค ๊ฒ๋๋ค.
8. ์์ ํ๊ณ ๋ฐฐํฌํ๊ธฐ
๋ธ๋ก๊ทธ๋ฅผ ์์ ํ์๋ ๋ฐฉ๋ฒ์ ๊ฐ ๋ธ๋ก๊ทธ ํ ๋ง๋ง๋ค ๋ค๋ฅผํ ๋ฐ์. ๊ทธ์ ๋ง์ถฐ์ ๋ณ๋์ฌํญ์ commitํ์ ํ์ ์๋ ๋ช ๋ น์ด๋ฅผ ์คํํ์๋ฉด ๋ณ๋์ฌํญ์ด ๋ธ๋ก๊ทธ์ ๋ฐฐํฌ๋ฉ๋๋ค!
npm run deploy
โญ๏ธ ์ด ๋ธ๋ก๊ทธ ํ ๋ง๋ฅผ ์ด์ฉํ๊ณ ์ถ์ผ์๋ค๋ฉด!
๋ง์ง๋ง์ผ๋ก ์ ๋ธ๋ก๊ทธ ํ ๋ง๋ฅผ ํ์ฉํ๊ณ ์ถ์ผ์๋ค๋ฉด ์๋ ๋งํฌ๋ฅผ ์ฐธ๊ณ ํด์ฃผ์ธ์! https://www.zoomkoding.com/gatsby-starter-zoomkoding-introduction
๊ถ๊ธํ์ ์ ์ด ์์ผ์๋ค๋ฉด ์ด์๋ก ๋จ๊ฒจ์ฃผ์๋ฉด ์ต๋ํ ๋น ๋ฅด๊ฒ ๋ต๋ณ ๋๋ฆฌ๋๋ก ํ๊ฒ ์ต๋๋ค!๐โโ๏ธ
๐ค ํน์ ํน์ ๊ธฐ๋ฅ์ด ์์ด์ ํ ๋ง ์ฌ์ฉ์ ๋ง์ค์ด์๊ฑฐ๋ ์ ์ํ๊ณ ์ถ์ผ์ ๊ธฐ๋ฅ์ด ์์ผ์๋ค๋ฉด,
๐ ์ฌ๊ธฐ์ ๋๊ธ ๋จ๊ฒจ์ฃผ์ธ์! ์ ๊ทน์ ์ผ๋ก ๋ฐ์ํ๊ฒ ์ต๋๋ค :)
์ ๊ณผ์ ์ ๋ฐ๋ผํ์๋ฉด์ ๊ถ๊ธํ์ ์ ์ด ์๋ค๋ฉด ์๋ ๋๊ธ
๋ก ๋จ๊ฒจ์ฃผ์ธ์!๐