#ํ๋ก์ ํธ ์ ์
์ด ๊ฐ์ด๋๋ ํ ํ๋ฆฟ์ผ๋ก ์ ํ๋ก์ ํธ๋ฅผ ๋ง๋ ๋ค ์ค์ ์ด์ ๊ฐ๋ฅํ ์ํ๊น์ง ์ ์ ํ๋ ์ ์ฒด ํ๋ฆ์ ๋ค๋ฃน๋๋ค.
#์ฌ์ ์ค๋น
- Node.js LTS 18 ์ด์
- Yarn (
yarn.lock์ฌ์ฉ)
#1. ํ ํ๋ฆฟ์ผ๋ก ์ ์ฅ์ ์์ฑ
- GitHub์์ Use this template๋ฅผ ํด๋ฆญํฉ๋๋ค.
- ๋ณธ์ธ ์ ์ฅ์๋ฅผ ์์ฑํฉ๋๋ค.
- ๋ก์ปฌ๋ก ํด๋ก ํฉ๋๋ค.
#2. ์์กด์ฑ ์ค์น
yarn install
#3. ํ๊ฒฝ ๋ณ์ ์ค์
.env.local.example์ .env.local๋ก ๋ณต์ฌํ ๋ค ๊ฐ์ ์ค์ ํฉ๋๋ค.
NEXT_PUBLIC_SITE_URL=http://localhost:3000
GOOGLE_INDEXING_URL=https://your-domain.com
NEXT_PUBLIC_GOOGLE_SITE_VERIFICATION=YOUR_GOOGLE_SITE_VERIFICATION_CODE
์ฐธ๊ณ :
NEXT_PUBLIC_SITE_URL: canonical URL, sitemap, metadata ์์ฑ์ ์ฌ์ฉGOOGLE_INDEXING_URL: Google ์ธ๋ฑ์ฑ ์คํฌ๋ฆฝํธ ๋์ ๋๋ฉ์ธNEXT_PUBLIC_GOOGLE_SITE_VERIFICATION: Search Console ์ธ์ฆ ๋ฉํ ํ๊ทธ
#4. ์คํํฐ ์ฝํ ์ธ ๋ณต์ฌ
cp -r examples/public/* public/
๋ณต์ฌ ํ ์๋๋ฅผ ์์ ํ์ธ์.
public/products/[slug]/: ํ๋ก๋ํธ ์ค์ , ๋ก์ผ์ผ, ์คํฌ๋ฆฐ์ท, ๋ฒ์ ๋ฌธ์, ์์ด์ฝpublic/site/: ๊ฐ๋ฐ์ ์๊ฐ ๋ฐ ์ฌ์ดํธ ๊ณตํต ๋ฐ์ดํฐ
#5. ๋ก์ปฌ ์คํ
yarn dev
#6. ๋น๋ ๋ฐ ํ๋ฆฌ๋ทฐ
yarn build
yarn start
#7. ๋ฐฐํฌ
- Next.js ๋น๋ ๊ฒฐ๊ณผ๋ฌผ์ ์ ์ ์ถ๋ ฅ(
out/)์ผ๋ก ์์ฑ๋ฉ๋๋ค. - Vercel ๋๋ ์ ์ ํธ์คํ (Netlify, S3/CloudFront, Cloudflare Pages)์ ๋ฐฐํฌํ ์ ์์ต๋๋ค.
#8. ๋ฐฐํฌ ํ ํต์ฌ ๋ผ์ฐํธ ํ์ธ
/{locale}/{locale}/{product}/{defaultLocale}/{product}/privacy-policy/{defaultLocale}/{product}/terms-of-use/{locale}/blogs
#9. ์ ํ ์ฌํญ: MCP ์ค์
- Pabal Store API MCP: Configure Credentials
- Pabal Resource MCP:
init-project๋ก ๋ก์ปฌ ASO/public ๋ฐ์ดํฐ ์ด๊ธฐํ
#10. ์ ์คํธ๋ฆผ ํ ํ๋ฆฟ ๋๊ธฐํ
git remote add upstream https://github.com/quartz-labs-dev/pabal-web.git
git fetch upstream
git merge upstream/main --allow-unrelated-histories
git push origin main