프로젝트 개요
Invalid Date
# **프로젝트 개요서: Next.js + Cloudflare Serverless Fullstack CMS**
**문서 번호:** PRJ-2025-001 (수정본)
**수신:** Antigravity
**작성일:** 2025년 12월 4일
**작성자:** [귀사의 이름/PM명]
## **1. 프로젝트 배경 및 목적**
본 프로젝트는 외부 워드프레스에 의존하지 않고, **Next.js와 Cloudflare 기술만으로 완결되는 '자체 CMS(Content Management System)'를 구축**하는 것을 목표로 합니다.
기존의 Headless 방식(WP 백엔드 + Next.js 프론트엔드)을 폐기하고, **Next.js가 프론트엔드와 백엔드(Admin) 역할을 모두 수행**하는 Serverless 아키텍처로 전환합니다.
### **핵심 목표**
1. **Zero External Dependency:** PHP 기반의 워드프레스 서버 없이, Cloudflare D1(DB)과 R2(Storage)만으로 CMS 기능 완벽 구현.
2. **All-in-One Application:** 하나의 Next.js 프로젝트 내에 '블로그(Public)'와 '관리자(Admin)' 기능을 통합.
3. **Serverless & Edge:** 모든 데이터와 로직은 Cloudflare Edge Network 위에서 동작하여 압도적인 성능과 비용 효율성 달성.
## **2. 기술 스택 (Tech Stack)**
### **Frontend & Backend (Next.js)**
* **Framework:** Next.js (App Router)
* **Language:** TypeScript
* **Styling:** Tailwind CSS
* **API:** Next.js Route Handlers (Serverless Functions)
### **Infrastructure (Cloudflare)**
* **Hosting:** Cloudflare Pages
* **Database:** Cloudflare D1 (SQLite at the Edge) - 글, 유저, 댓글 저장
* **Storage:** Cloudflare R2 - 이미지 및 미디어 파일 저장
* **Session:** Cloudflare KV (또는 D1) - 사용자 세션 관리
## **3. 시스템 아키텍처 개요**
```mermaid
graph LR
User[방문자] --> CF[Cloudflare Pages]
Admin[관리자] --> CF
CF -->|SSR/API| Next[Next.js App]
Next -->|Query/Mutation| D1[Cloudflare D1 (DB)]
Next -->|Upload/Serve| R2[Cloudflare R2 (Images)]
4. 주요 기능
- 블로그 (Public):
- 포스트 목록 및 상세 보기 (SSR/ISR)
- 카테고리/태그 필터링
- 조회수/좋아요 (D1 실시간 반영)
- 관리자 (Admin):
- 대시보드 (통계 확인)
- 글 작성 에디터: Rich Text Editor (Tiptap/Quill) 탑재
- 이미지 업로드: 에디터 내 이미지 드래그 앤 드롭 -> R2 자동 업로드
- 글 관리 (수정, 삭제, 공개/비공개 설정)
5. 기대 효과
- 별도의 백엔드 서버 유지비용 0원 (Cloudflare Free Tier 활용).
- 단일 코드베이스로 관리 포인트 일원화.
- Next.js의 최신 기능을 100% 활용한 고성능 블로그 구축.