Home / AI / AI 바이브코딩 / AI로 블로그 만들기 — Next.js + 마크다운 정적 사이트 30분 완성
VIBE
AI로 블로그 만들기 — Next.js + 마크다운 정적 사이트 30분 완성
게시일 2026-04-30수정일 2026-04-30
On this page
이 튜토리얼은 Claude Code / Next.js 16 / gray-matter 기준입니다 (2026-04). 도구 업데이트 시 검토 필요.
마크다운 파일을 폴더에 넣으면 자동으로 블로그 글이 된다. 데이터베이스도 CMS도 필요 없고, 글을 쓰는 것만큼 단순하다. Claude Code와 Next.js로 30분 안에 이 구조를 완성할 수 있다.
준비물
- Node.js 20+:
node -v로 확인 - Claude Code (claude.ai/code 또는 VS Code 확장)
- Vercel 계정 (무료, 배포용)
- 예상 시간: 30분
1. 프로젝트 생성
npx create-next-app@latest my-blog \
--typescript \
--tailwind \
--app \
--no-src-dir
cd my-blog
npm install gray-matter react-markdowngray-matter는 마크다운 파일의 frontmatter(제목·날짜 등 메타데이터)를 파싱하는 라이브러리다. react-markdown은 마크다운 본문을 HTML로 렌더링한다.
2. 마크다운 파일 구조 설정
Claude Code에 요청한다.
posts/ 폴더를 만들고 샘플 마크다운 파일 2개를 만들어줘.
각 파일 상단 frontmatter에 title, date, description 필드를 포함해야 해.생성된 파일 예시:
---
title: "첫 번째 글"
date: "2026-04-30"
description: "블로그 첫 글입니다."
---
여기에 본문을 씁니다.3. 글 목록 유틸리티 작성
Claude Code에 요청한다.
lib/posts.ts 파일을 만들어줘.
posts/ 폴더의 .md 파일을 모두 읽어서
{ slug, title, date, description } 배열을 반환하는 getAllPosts() 함수를 구현해줘.
gray-matter로 frontmatter를 파싱하고, date 기준 내림차순 정렬해줘.서버 사이드에서만 동작하는 코드임을 확인한다. fs, path 모듈은 서버에서만 사용 가능하며 클라이언트 컴포넌트에서 import하면 에러가 발생한다.
AD
4. 글 목록·개별 글 페이지 구현
목록 페이지를 요청한다.
app/blog/page.tsx 에 getAllPosts()로 글 목록을 보여주는 페이지를 만들어줘.
각 글 제목은 /blog/[slug] 링크로 연결해줘.
Tailwind로 깔끔하게 스타일링해줘.개별 글 페이지를 요청한다.
app/blog/[slug]/page.tsx 를 만들어줘.
slug에 해당하는 .md 파일을 읽어 본문을 react-markdown으로 렌더링해줘.
generateStaticParams()도 구현해서 정적 생성을 활용해줘.5. Vercel 배포
# Vercel CLI 설치 (처음 한 번만)
npm install -g vercel
# 배포
vercel deploy --prodGitHub 저장소에 push 후 Vercel 대시보드에서 Import Project를 선택하는 방법도 동일하게 동작한다. 환경변수 설정이 없으므로 별도 설정 없이 배포가 완료된다.
결과
완성된 구조:
my-blog/
├── posts/
│ ├── hello-world.md
│ └── second-post.md
├── app/
│ ├── blog/
│ │ ├── page.tsx ← 글 목록
│ │ └── [slug]/page.tsx ← 개별 글
│ └── page.tsx ← 홈
└── lib/posts.ts ← 파일 읽기 유틸새 글은 posts/ 폴더에 .md 파일을 추가하고 git push하면 Vercel이 자동으로 재빌드해 배포한다.
다음 단계
- seo — Next.js에서 메타 태그로 검색 최적화하는 방법
- rss — RSS 피드를 추가해 구독자를 모으는 방법
- nextjs — Next.js App Router 전체 구조 이해
AD