Published on

1단계: Pliny 소개 및 설치

Pliny 소개 및 설치

Pliny는 Next.js 기반으로 설계된 오픈소스 블로그 템플릿입니다.
MDX 기반 콘텐츠, Tailwind CSS, Contentlayer를 통합해 빠르게 기술 블로그를 구축할 수 있습니다.


1-1. Pliny란?

Pliny는 Next.js + MDX + Tailwind CSS + Contentlayer를 조합한 완성형 블로그 템플릿입니다.

주요 특징

  • 다크모드, 태그 시스템, RSS, sitemap, SEO 등 블로그에 필요한 기능을 기본 제공
  • MDX 기반 콘텐츠 작성 (마크다운 + JSX)
  • Contentlayer를 통해 타입 안전한 정적 콘텐츠 로딩
  • Next.js 기반으로 커스터마이징이 쉬움

1-2. 설치 방법

1) GitHub에서 클론

git clone https://github.com/timlrx/pliny.git my-blog
cd my-blog

2) 패키지 설치

pnpm install  # 또는 yarn, npm 사용 가능
  • Pliny는 pnpm을 권장하지만, yarn 또는 npm도 사용할 수 있습니다.

3) 개발 서버 실행

pnpm dev

브라우저에서 http://localhost:3000 접속


1-3. 초기 설정 파일 확인

  • siteMetadata.ts: 블로그 이름, 설명, 작성자, SNS 링크 등을 설정
  • .env.example.env 복사
cp .env.example .env
  • contentlayer.config.ts: Contentlayer 설정 파일

1-4. 초기 화면 구조 이해

  • /content/blog/*.mdx: 블로그 글 목록
  • /pages/index.tsx: 메인 홈 화면 (글 목록 출력)
  • /layouts/PostLayout.tsx: 포스트 상세 페이지 템플릿

요약

  • Pliny는 Next.js 기반 기술 블로그 템플릿으로 필수 기능이 내장되어 있습니다.
  • GitHub에서 클론하고 패키지를 설치하면 바로 실행 가능합니다.
  • 커스터마이징은 siteMetadata와 contentlayer 설정부터 시작하면 됩니다.

심화학습

Q1. Pliny는 왜 Contentlayer를 사용하는 걸까? 단순 MDX import와 어떤 차이가 있을까?

A: Contentlayer는 정적 타입 생성(TypeScript), 경로 자동 매핑, computed 필드 생성 등 MDX를 정적으로 관리하기 위한 기능을 제공합니다. 직접 import 방식보다 유지보수성과 확장성이 뛰어납니다.


Q2. 초기 실행 시 오류가 난다면 어떤 부분부터 점검해야 할까?

A: .env 파일 누락, contentlayer 설정 문제, content/blog 폴더의 MDX 형식 오류 등을 우선 점검해야 합니다.


Q3. 기존 Next.js 프로젝트에 Pliny 구조만 일부 도입하려면 어떤 방식으로 분리/추출해야 할까?

A: contentlayer 설정, layouts 폴더, siteMetadata.ts, content/blog 구조 등 핵심 구성 요소만 추출해 기존 프로젝트에 통합하면 됩니다. 경로와 타입 설정에 유의해야 합니다.