검색 K
밝은/어두운 배경
밝은/어두운 배경
게시물 정보
프로젝트 루트에 .env 파일을 생성합니다.
---
date: 2026-06-08
writers: claude.ai
description: DB
pageClass: sysDocs
tags:
- 기술 문서
- 운영 매뉴얼
- claude.ai
- DB
---
# DB
<div aria-hidden="true" class="aria-hidden">
:::info 게시물 정보
- 작성일: <Date />
- 글쓴이: <Writers />
- 주제어: <TagLinks />
:::
</div>
DATABASE_URL=postgresql://...@...neon.tech/...?sslmode=require
---
date: 2026-06-08
writers: claude.ai
description: 이메일 (Resend)
pageClass: sysDocs
tags:
- 기술 문서
- 운영 매뉴얼
- claude.ai
- 이메일 (Resend)
---
# 이메일 (Resend)
<div aria-hidden="true" class="aria-hidden">
:::info 게시물 정보
- 작성일: <Date />
- 글쓴이: <Writers />
- 주제어: <TagLinks />
:::
</div>
RESEND_API_KEY=re_...
ADMIN_EMAIL=admin@example.com
REVIEW_BASE_URL=http://localhost:3001
---
date: 2026-06-08
writers: claude.ai
description: GitHub Actions 트리거 (선택 — 없으면 스킵)
pageClass: sysDocs
tags:
- 기술 문서
- 운영 매뉴얼
- claude.ai
- GitHub Actions 트리거 (선택 — 없으면 스킵)
---
# GitHub Actions 트리거 (선택 — 없으면 스킵)
<div aria-hidden="true" class="aria-hidden">
:::info 게시물 정보
- 작성일: <Date />
- 글쓴이: <Writers />
- 주제어: <TagLinks />
:::
</div>
GH_REPO=owner/repo
GH_TOKEN=ghp_...REVIEW_BASE_URL을 http://localhost:3001로 설정하면 이메일 내 승인/반려 링크가 로컬 서버를 가리킵니다.
GH_REPO·GH_TOKEN을 설정하지 않으면 _github.ts가 경고 로그만 출력하고 트리거를 스킵합니다. 로컬 개발 시에는 보통 설정하지 않아도 무방합니다.
tsx scripts/api-server.ts
---
date: 2026-06-08
writers: claude.ai
description: ✅ API 서버 실행 중: http://localhost:3001
pageClass: sysDocs
tags:
- 기술 문서
- 운영 매뉴얼
- claude.ai
- ✅ API 서버 실행 중: http://localhost:3001
---
# ✅ API 서버 실행 중: http://localhost:3001
<div aria-hidden="true" class="aria-hidden">
:::info 게시물 정보
- 작성일: <Date />
- 글쓴이: <Writers />
- 주제어: <TagLinks />
:::
</div>프론트엔드 개발 서버(기본 5173)와 함께 실행합니다. api-server.ts에 CORS 미들웨어가 포함되어 있어 localhost:5173에서 호출이 허용됩니다.
tsx scripts/hash-password.ts mypassword
---
date: 2026-06-08
writers: claude.ai
description: password_hash: $2b$12$...
pageClass: sysDocs
tags:
- 기술 문서
- 운영 매뉴얼
- claude.ai
- password_hash: $2b$12$...
---
# password_hash: $2b$12$...
<div aria-hidden="true" class="aria-hidden">
:::info 게시물 정보
- 작성일: <Date />
- 글쓴이: <Writers />
- 주제어: <TagLinks />
:::
</div>INSERT INTO users (folder_name, password_hash, email)
VALUES ('my-folder', '$2b$12$...', 'user@example.com');---
date: 2026-06-08
writers: claude.ai
description: 피드 등록 신청
pageClass: sysDocs
tags:
- 기술 문서
- 운영 매뉴얼
- claude.ai
- 피드 등록 신청
---
# 피드 등록 신청
<div aria-hidden="true" class="aria-hidden">
:::info 게시물 정보
- 작성일: <Date />
- 글쓴이: <Writers />
- 주제어: <TagLinks />
:::
</div>
curl -X POST http://localhost:3001/api/rss-register \
-H "Content-Type: application/json" \
-d '{
"folderName": "my-folder",
"password": "mypassword",
"feeds": [{
"feedUrl": "https://example.com/rss",
"feedTitle": "테스트 피드",
"sourceLink": "https://example.com"
}]
}'
---
date: 2026-06-08
writers: claude.ai
description: 내 피드 목록 조회
pageClass: sysDocs
tags:
- 기술 문서
- 운영 매뉴얼
- claude.ai
- 내 피드 목록 조회
---
# 내 피드 목록 조회
<div aria-hidden="true" class="aria-hidden">
:::info 게시물 정보
- 작성일: <Date />
- 글쓴이: <Writers />
- 주제어: <TagLinks />
:::
</div>
curl -X POST http://localhost:3001/api/my-feeds \
-H "Content-Type: application/json" \
-d '{"folderName": "my-folder", "password": "mypassword"}'| 항목 | 로컬 (api-server.ts) | Vercel |
|---|---|---|
| 진입점 | Express 라우터 | 파일별 독립 Function |
| CORS | api-server.ts 미들웨어 | 각 핸들러의 setCors |
| 환경 변수 | .env 파일 | Vercel 대시보드 Environment Variables |
| 재시작 | 수동 또는 tsx --watch | 자동 배포 |
핸들러 코드 자체(rss-register.ts 등)는 두 환경에서 동일하게 동작합니다.