
์ผ๋จ ์ผํ๋ชฐ์ ํ์ํ ์ํ CRUD, ์ฅ๋ฐ๊ตฌ๋ ๊ธฐ๋ฅ ์ ๋๊น์ง ๋ชจ๋ ๊ฐ์ท๋ค. UI ๋์์ธ์ ๋ฐฐํฌ ์ดํ์ ํด๋ณด๋๋ก ํ๊ณ ์ฐ์ ๋ฐฐํฌ๋ถํฐ ์งํํด๋ณด์.
๋ ์ด ๋จ๊ณ์์ ๋งํ์ ์์ฑ(?)๋ ํ๋ก์ ํธ๋ค์ ๊ฐ๋ฐ๊น์ง๋ง ํ๊ณ ๊ทธ์ณค๋๋ฐ, ์ด๋ฒ์ ํ๋ฒ๋ ์์จ๋ณธ Vercel๊ณผ Heroku๋ฅผ ์ด์ฉํด๋ณด์.
โ ์๊ฐ ์ ๋ฆฌ๋ฅผ ์ข ํด๋ณด์๋ฉด...
graphql์ ์ฒ๋ฆฌํ๊ธฐ ์ํ ์๋ฒ๋ก Heroku
๋ฐ์ดํฐ๋ฅผ ์ฒ๋ฆฌํ๊ธฐ ์ํ ์๋ฒ๋กค Firebase
Client๋ฅผ ์ฒ๋ฆฌํ๊ธฐ ์ํ ์๋ฒ๋ก Vercel
์ ์ฌ์ฉํ๋ค๊ณ ๋ณด๋ฉด ๋ ๊ฑฐ ๊ฐ๋ค.
๋ฐ๋ผ์, Vecel ์
์ฅ์์๋ ์๋ฒ๋ก Heroku๋ฅผ ๋ฐ๋ผ๋ด์ผํ๊ณ , Heroku ์
์ฅ์์๋ ํด๋ผ์ด์ธํธ๋ Vercel๋ฅผ ๋ฐ๋ผ๋ด์ผํ๋ฉฐ, ์๋ฒ๋ Firbase๋ฅผ ๋ฐ๋ผ๋ด์ผํ๋ ์ํฉ์ธ ๊ฒ ๊ฐ๋ค.
โ Github Repository์ ์ผํ๋ชฐ ํ๋ก์ ํธ๋ฅผ ๊ฐ์ ธ์ import

โ
Deploy ํ Visit ํด๋ฆญ์ ํ๋ก์ ํธ ์ฌ์ดํธ ์คํ

โ ์๋์ ์ผ๋ก ๋ณ๊ฒฝ์ ๋ํ ๋น๋ ์ค์

โ ๋น๋ ์งํ ๋ฐ ์ปค๋ฐ
"build": "tsc && vite build"

โ development, production ๊ตฌ๋ถ
๊ฐ๋ฐํ ๋์ URL๊ณผ ๋ฐฐํฌ์ ์ฌ์ฉํ URL์ ๊ตฌ๋ถํ๊ธฐ ์ํด envํ์ผ ์์ฑํ ๋ถ๋ฌ์ค๊ธฐ
const BASE_URL = import.meta.env.VITE_SERVER_URL as string;
โ Github Repository์ ์ฐ๋

โ ๋น๋ ์งํ
"serve": "npm run build && cross-env NODE_ENV=production node ./dist/index.js"
โ
Confifure variables ์ค์

โ development, production ๊ตฌ๋ถ
https://localhost:5173, ๋ฐฐํฌ์์๋ ์์ ์์ฑํ Vercel URL์ธ https://pjh-shoppingmall.vercel.app๋ก ์ค์ โ Github Repository ๋ณ๊ฒฝ์ ๋ฐ๋ฅธ ์๋๋ฐฐํฌ ์ค์

โ
๋น๋ ์งํํ ๋ฐฐํฌ ์๋ฃ ํ์ธ

๋๋์ฒด ์ ์๋๋๊ฑฐ์ผ!!!!!!
Vite์ ๊ฒฝ์ฐ process.env๋ก ๋ถ๋ฌ์ค๋ ๋์ import.meta.env ๊ฐ์ฒด๋ฅผ ์ด์ฉํด ํ๊ฒฝ๋ณ์์ ์ ๊ทผํ ์ ์๋๋ก ํ๊ณ ์๋ค.
ํด๋ผ์ด์ธํธ์์ ์๋ฌ๋ ๋ค์๊ณผ ๊ฐ๋ค.
Typescript ์์ ์ฌ์ฉ์ ํ๋ ค๋ฉด ์ ํ์ ์๋ฅผ ์ ๊ณตํด์ค์ผํ๋ค๋ ๋ง์ธ ๊ฒ ๊ฐ๋ค. ๋ฐ๋ผ์, env.d.tsํ์ผ์ ๊ฐ๋ณ์ ์ผ๋ก envํ์ผ์ ๋ํ ํ์
์ ์๋ฅผ ํด์ฃผ์๋ค.

์๋ฒ์์๋ envํ์ผ์ ์์ ๋ถ๋ฌ์ค์ง ๋ชปํด์ ์ผ๋จ firbase์ ๋ํ api key์ ๊ฐ์ ์ ๋ณด๋ฅผ ๊ฐ์ง firebase.js๋ git ignoreํด๋์ ์ํ์ด๋ค.
์ด๋ถ๋ถ์ ์ถํ์ ๋ค์ ํด๊ฒฐํด๋ด์ผ๊ฒ ๋ค.
์์ ๊ณผ์ ์ ๋ชจ๋ ์๋ฃํ๊ณ , Vercel์์ ์์ฑํ ํ๋ก์ ํธ url๋ก ์ ์ํ๋ฉด ์ด์ ์๋ฒ์ ๋ฐ์ดํฐ๊น์ง ๋ค์ด์จ ๊ฒ์ ํ์ธํ ์ ์์๋ค.
์ด์ UI Design์ ์ ํ๋ณด์.
๊ทธ๋ฆฌ๊ณ ๋ค์๊ณผ ๊ฐ์ ๋ถ๋ถ๋ค์ ์ถ๊ฐ ๋ฐ ํด๊ฒฐํด์ผํ๋ค.
> โ๏ธ ์ํ ์
๋ก๋์ orderby๋ก ์ ๋ ฌ์ํค๊ธฐ (error ํด๊ฒฐํ๊ธฐ)
โ๏ธ admin ํ์ด์ง ์ธ์ฆ์ฒ๋ฆฌํ๊ธฐ
โ๏ธ ์ด๋ฏธ์ง ํ์ผ ์
๋ก๋ํ๊ธฐ
โ๏ธ ๋ฌดํ์คํฌ๋กค ๋ฒ๊ทธ ํด๊ฒฐํ๊ธฐ
โ๏ธ ์ฅ๋ฐ๊ตฌ๋ ์ํ ์ญ์ ์๋ฌ ํด๊ฒฐํ๊ธฐ
โ๏ธ Vite env ๋์ ์๋ฌ - ์์๋ก firebaseํ์ผ ignore
โ๏ธ ๋ฐฐํฌ์ฌ์ดํธ ํ์ดํ, ์ด๋ฏธ์ง ๋ณ๊ฒฝ
โ๏ธ ๋ก๋ฉ UI ์ถ๊ฐํ๊ธฐ