
๐ Portfolio Site
- ํ๋ก์ ํธ ์๊ฐ: Next.js App Router ๊ธฐ๋ฐ์ ๊ฐ์ธ ํฌํธํด๋ฆฌ์ค ์น์ฌ์ดํธ
- ์์ธ: ๋ฉํ์ ๋ณธ๋ฌธ์ ๋ถ๋ฆฌํ ์ด์ค ์์ค ๊ตฌ์กฐ๋ก, ํ์ผ ๋ ๊ฐ๋ง ์ถ๊ฐํ๋ฉด ์์ธ ํ์ด์ง๊ฐ ์๋ ์์ฑ๋ฉ๋๋ค. ์ปค์คํ
remark ํ๋ฌ๊ทธ์ธ ์์ฑ, ์ ํ์ด์ง ๋ชจ๋ฐ์ผ Performance 95 ์ด์ ๋ฌ์ฑ.
- Tech:Next.jsTypeScriptTailwind CSSMDXremarkVercelGA4์น ์ฑ๋ฅ ์ต์ ํ
- ์งํ ๊ธฐ๊ฐ: 2026-02-03 ~ 2026-02-28
- ์์: ์ฌ์ด๋ํ๋ก์ ํธ
Portfolio ๋ฉ์ธํ๋ฉดPortfolio ์บ๋ฌ์
๊ธฐ๋ฅProjects ํ์ด์ง ๋ชฉ๋ก ํ์ธProject ํ์ด์ง ์์ธ ํ์ธProject ํ์ด์ง ์์ธ ํ์ธ2๋ฉ์ธํ๋ฉด ์์ธ ์๊ฐProject ํ์ด์ง ๋ชฉ๋ก ๋ชจ๋ฐ์ผ ๋ฐ์ํProject ํ์ด์ง ์์ธ ๋ชจ๋ฐ์ผ ๋ฐ์ํ
๐ ํ๋ก์ ํธ ๊ฐ์
- Next.js(App Router) ๊ธฐ๋ฐ์ผ๋ก ์ ์ํ ๊ฐ์ธ ํฌํธํด๋ฆฌ์ค ์ฌ์ดํธ์
๋๋ค.
- ํ๋ก์ ํธ๋ฅผ ๋ฉํ ๋ฐ์ดํฐ์ ๋ณธ๋ฌธ ๋ ์์ค๋ก ๋ถ๋ฆฌํ์ฌ, ๋ฉํ๋
projects.json์, ์์ธ ์ค๋ช
์ MDX ํ์ผ์ ๋์์ต๋๋ค.
slug ๋งค์นญ๋ง์ผ๋ก ์์ธ ํ์ด์ง๊ฐ ์๋ ์์ฑ๋๋ฏ๋ก, ํ์ผ ๋ ๊ฐ๋ง ์ถ๊ฐํ๋ฉด ์ ํ๋ก์ ํธ๊ฐ ์ฌ์ดํธ์ ๋ฐ์๋ฉ๋๋ค.
- ๋งํฌ๋ค์ด์ ์๋ ๊ฐ์กฐ ๋ฌธ๋ฒ์ ์ฐ๊ธฐ ์ํด ์ปค์คํ
remark ํ๋ฌ๊ทธ์ธ์ ์์ฑํด,
๋ณธ๋ฌธ์ JSX ํ๊ทธ๋ฅผ ์ง์ ์ฐ์ง ์์๋ ๋๋๋ก ํ์ต๋๋ค.
- ์ด๋ฏธ์ง ๋ก๋ฉ๊ณผ ๋ฉํ๋ฐ์ดํฐ๋ฅผ ์ต์ ํํ์ฌ, PageSpeed Insights ๊ธฐ์ค
์ ํ์ด์ง ๋ชจ๋ฐ์ผ Performance 95 ์ด์, ์ ๊ทผ์ฑ๊ณผ SEO 100์ ํ๋ณดํ์ต๋๋ค.
๐งโ๐ป ์ฃผ์ ๊ธฐ์ฌ
- ํ๋ก์ ํธ๋ฅผ ๋ฉํ(projects.json)์ ๋ณธ๋ฌธ(MDX) ์ด์ค ์์ค๋ก ๋ถ๋ฆฌํ๊ณ ,
slug ๋งค์นญ์ผ๋ก ๋์ ๋ผ์ฐํธ๋ฅผ ์๋ ์์ฑํ๋๋ก ๊ตฌ์ฑํ์์ต๋๋ค.
- ๋งํฌ๋ค์ด ๊ฐ์กฐ ๋ฌธ๋ฒ๊ณผ ํค์๋ ํ๊ธฐ๋ฅผ JSX๋ก ๋ณํํ๋ ์ปค์คํ
remark ํ๋ฌ๊ทธ์ธ์ ์์ฑํ์์ต๋๋ค.
- Metadata API๋ก ํ์ด์ง๋ณ ๋ฉํ๋ฐ์ดํฐ์ Open Graph, Canonical URL์ ๊ตฌ์ฑํ๊ณ ,
sitemap๊ณผ robots ์ค์ ์ผ๋ก ๊ฒ์ ์์ง ์์ธ์ ์ ์ฉํ์์ต๋๋ค.
- next/Image์ WebP ๋ณํ, priority ๋ฐ lazy loading์ ์ ์ฉํด ์ด๋ฏธ์ง ๋ก๋ฉ์ ์ต์ ํํ์์ต๋๋ค.
- ๋ชฉ๋ก๊ณผ ์์ธ๋ฅผ ๋ถ๋ฆฌํ ๋ผ์ฐํ
๊ตฌ์กฐ์ ๋ชจ๋ฐ์ผ ๋ฐ์ํ ๋ ์ด์์์ ๊ตฌํํ์์ต๋๋ค.
- Vercel ๋ฐฐํฌ์ ์ปค์คํ
๋๋ฉ์ธ, HTTPS๋ฅผ ์ ์ฉํ๊ณ GA4๋ก ์ ์
์ ํ์ธํ๊ณ ์์ต๋๋ค.
๐ง ๊ธฐ์ ์ ํ ๋ฐ ์ค๊ณ ๊ณ ๋ฏผ
๋ฉํ์ ๋ณธ๋ฌธ์ ๋๋ ์ด์
- ํ๋ก์ ํธ ๋ชฉ๋ก ํ์ด์ง์๋ ์ ๋ชฉ, ์์ฝ, ๊ธฐ์ ์คํ, ์ธ๋ค์ผ๋ง ํ์ํฉ๋๋ค.
์ด ์ ๋ณด๊ฐ MDX ๋ณธ๋ฌธ ์์ ์์ผ๋ฉด ๋ชฉ๋ก์ ๊ทธ๋ฆฌ๊ธฐ ์ํด ๋ชจ๋ ๋ณธ๋ฌธ ํ์ผ์ ์ฝ์ด์ผ ํฉ๋๋ค.
- ๋ฉํ๋
projects.json์ ๋ชจ์ ๋ชฉ๋ก์์ ๋ฐ๋ก ์ฐ๊ณ , ์์ธ ์ค๋ช
์ MDX์ ๋์์ต๋๋ค.
๋์ slug๋ก๋ง ์ฐ๊ฒฐ๋๋ฏ๋ก, ์ ํ๋ก์ ํธ๋ฅผ ์ถ๊ฐํ ๋ ๋ผ์ฐํ
์ฝ๋๋ฅผ ๊ฑด๋๋ฆด ์ผ์ด ์์ต๋๋ค.
- ์ค์ ๋ก ํ๋ก์ ํธ๋ฅผ ์ถ๊ฐํ๋ ์์
์ด JSON ํญ๋ชฉ ํ๋์ MDX ํ์ผ ํ๋๋ก ๋๋ฉ๋๋ค.
์ปค์คํ
remark ํ๋ฌ๊ทธ์ธ์ ๋ง๋ ์ด์
- ๋ณธ๋ฌธ์์ ํน์ ๊ตฌ์ ์ ๊ฐ์กฐํ๊ฑฐ๋ ๊ธฐ์ ํค์๋๋ฅผ ํ์ํ๊ณ ์ถ์๋๋ฐ,
๋งค๋ฒ JSX ํ๊ทธ๋ฅผ ์ง์ ์ฐ๋ฉด ๋ณธ๋ฌธ์ด ๋งํฌ์
์ผ๋ก ์ง์ ๋ถํด์ง๋๋ค.
- ๊ฐ์กฐ์ ํค์๋ ํ๊ธฐ๋ฅผ ์ํ ๋ฌธ๋ฒ์ ์ ํ๊ณ , ์ด๋ฅผ JSX ์ปดํฌ๋ํธ๋ก ๋ณํํ๋ remark ํ๋ฌ๊ทธ์ธ์ ์์ฑํ์ต๋๋ค.
- ๊ฒฐ๊ณผ์ ์ผ๋ก MDX ๋ณธ๋ฌธ์ ์ฝ๊ธฐ ์ฌ์ด ์ํ๋ก ์ ์ง๋๊ณ , ํํ ๋ฐฉ์์ ๋ฐ๊พธ๊ณ ์ถ์ ๋ ํ๋ฌ๊ทธ์ธ ํ ๊ณณ๋ง ์์ ํ๋ฉด ๋ฉ๋๋ค.
์ฑ๋ฅ๊ณผ ๊ฒ์ ๋
ธ์ถ
- ์ด๋ฏธ์ง๊ฐ ๋ง์ ์ฌ์ดํธ๋ผ ๋ก๋ฉ์ด ๊ฐ์ฅ ํฐ ๋ถ๋ด์ด์์ต๋๋ค.
WebP๋ก ๋ณํํ๊ณ next/Image๋ก ํฌ๊ธฐ๋ฅผ ์ง์ ํ์ผ๋ฉฐ,
์ฒซ ํ๋ฉด์ ๋ณด์ด๋ ์ด๋ฏธ์ง์๋ง priority๋ฅผ ์ฃผ๊ณ ๋๋จธ์ง๋ lazy loading์ผ๋ก ๋์์ต๋๋ค.
- ๊ฒ์ ๋
ธ์ถ์ ์ํด Metadata API๋ก ํ์ด์ง๋ณ ๋ฉํ๋ฐ์ดํฐ๋ฅผ ๊ตฌ์ฑํ๊ณ ,
sitemap๊ณผ robots๋ฅผ ์ค์ ํด Google Search Console์ ์์ธ์ ๋ฑ๋กํ์ต๋๋ค.
- PageSpeed Insights๋ก ๋ฉ์ธ, ๋ชฉ๋ก, ์์ธ ํ์ด์ง๋ฅผ ๊ฐ๊ฐ ์ธก์ ํด ํ์ด์ง๋ณ๋ก ํธ์ฐจ๊ฐ ์๋์ง ํ์ธํ์ต๋๋ค.
๋ชฉ๋ก ํ์ด์ง๋ง SEO ์ ์๊ฐ ๋ฎ๊ฒ ๋์ ์์ธ์ ํ์ธํ๊ณ ๋ณด์ํ ๊ฒฐ๊ณผ,
์ ํ์ด์ง ๋ชจ๋ฐ์ผ Performance 95 ์ด์, ์ ๊ทผ์ฑ๊ณผ SEO 100์ ํ๋ณดํ์ต๋๋ค.
๋ฉ์ธ ํ์ด์ง๋ ๋ฐ์คํฌํฑ ๊ธฐ์ค ๋ค ๊ฐ ์งํ ๋ชจ๋ 100์
๋๋ค.
๐ ํ๋ก์ ํธ ๋งํฌ