194 lines
7.6 KiB
Bash
194 lines
7.6 KiB
Bash
# ============================================
|
|
# CaStAD v3.2.0 개발 환경 설정 파일
|
|
# ============================================
|
|
# 이 파일을 .env로 복사하여 사용하세요
|
|
# cp .env.example .env
|
|
# ============================================
|
|
|
|
# ============================================
|
|
# 🔧 기본 설정 (Basic Configuration)
|
|
# ============================================
|
|
|
|
# Node 환경 설정
|
|
# - development: 개발 모드 (상세 로그, 핫 리로딩)
|
|
# - production: 프로덕션 모드 (최적화, 보안 강화)
|
|
NODE_ENV=development
|
|
|
|
# 백엔드 서버 포트 (Express.js)
|
|
# - 기본값: 3001
|
|
# - Vite 프록시가 이 포트로 API 요청을 전달합니다
|
|
PORT=3001
|
|
|
|
# JWT 인증 시크릿 키
|
|
# - 사용자 인증 토큰 생성에 사용
|
|
# - 프로덕션에서는 반드시 복잡한 랜덤 문자열로 변경하세요!
|
|
# - 예: openssl rand -base64 32
|
|
JWT_SECRET=dev-secret-key-change-in-production
|
|
|
|
# URL 설정 (개발 환경)
|
|
# - FRONTEND_URL: 프론트엔드 URL (Vite 개발 서버)
|
|
# - BACKEND_URL: 백엔드 API URL
|
|
# - ALLOWED_ORIGINS: CORS 허용 도메인 (쉼표로 구분)
|
|
FRONTEND_URL=http://localhost:5173
|
|
BACKEND_URL=http://localhost:3001
|
|
ALLOWED_ORIGINS=http://localhost:5173,http://localhost:3000
|
|
|
|
# ============================================
|
|
# 🔑 필수 API 키 (Required APIs)
|
|
# ============================================
|
|
# 이 키들이 없으면 핵심 기능이 작동하지 않습니다
|
|
|
|
# Google Gemini AI API
|
|
# - 용도: AI 텍스트 생성, 마케팅 문구 작성, AI 매직 라이트
|
|
# - 발급: https://ai.google.dev/ (Google AI Studio)
|
|
# - 무료 할당량: 분당 60회 요청
|
|
# - 참고: 서버와 프론트엔드 모두에서 사용 (VITE_ 접두사 필요)
|
|
VITE_GEMINI_API_KEY=your-gemini-api-key
|
|
|
|
# Suno AI API
|
|
# - 용도: AI 음악 생성 (배경음악, 광고 음악)
|
|
# - 발급: https://suno.ai/ 또는 프록시 서비스 사용
|
|
# - 프록시 예시: https://github.com/gcui-art/suno-api
|
|
SUNO_API_KEY=your-suno-api-key
|
|
|
|
# ============================================
|
|
# 🎪 축제 연동 API (Festival Integration)
|
|
# ============================================
|
|
|
|
# 한국관광공사 Tour API
|
|
# - 용도: 전국 축제/행사 정보 조회, 지역별 축제 연동
|
|
# - 발급: https://api.visitkorea.or.kr/ (회원가입 후 키 발급)
|
|
# - 무료 할당량: 일 1,000회
|
|
# - 서비스: KorService2 (최신 버전)
|
|
TOURAPI_KEY=your-tour-api-key
|
|
TOURAPI_ENDPOINT=https://apis.data.go.kr/B551011/KorService2
|
|
|
|
# ============================================
|
|
# 📍 지오코딩 API (Geocoding)
|
|
# ============================================
|
|
|
|
# Kakao REST API
|
|
# - 용도: 주소 → 좌표 변환, 펜션 위치 기반 근처 축제 검색
|
|
# - 발급: https://developers.kakao.com/ (앱 생성 후 REST API 키)
|
|
# - 무료 할당량: 일 30,000회
|
|
KAKAO_REST_KEY=your-kakao-rest-api-key
|
|
|
|
# ============================================
|
|
# 📺 YouTube 업로드 (YouTube Upload)
|
|
# ============================================
|
|
# OAuth 2.0 방식 - 사용자별 개인 채널 연동
|
|
|
|
# YouTube OAuth 설정
|
|
# - 설정 파일: server/client_secret.json
|
|
# - 발급 방법:
|
|
# 1. Google Cloud Console (https://console.cloud.google.com)
|
|
# 2. "사용자 인증 정보" → "OAuth 2.0 클라이언트 ID" 생성
|
|
# 3. 리디렉션 URI 추가: http://localhost:3001/api/youtube/oauth/callback
|
|
# 4. JSON 다운로드 → server/client_secret.json으로 저장
|
|
# - 주의: 개발/테스트 앱은 "Google에서 확인하지 않은 앱" 경고가 표시됨
|
|
|
|
# ============================================
|
|
# 📊 Google Cloud Billing (선택)
|
|
# ============================================
|
|
# BigQuery를 통한 클라우드 비용 분석
|
|
|
|
# Google Cloud Billing 설정
|
|
# - 용도: API 사용량 비용 추적, 비용 분석 대시보드
|
|
# - 전제 조건:
|
|
# 1. Google Cloud 프로젝트에서 결제 내보내기 → BigQuery 설정
|
|
# 2. 서비스 계정 생성 (BigQuery 읽기 권한)
|
|
# 3. 서비스 계정 키 JSON 다운로드
|
|
# - KEY_PATH: 서비스 계정 키 파일 경로
|
|
# - PROJECT_ID: Google Cloud 프로젝트 ID
|
|
# - DATASET_ID: BigQuery 데이터셋 ID
|
|
GOOGLE_BILLING_KEY_PATH=./server/google-billing-key.json
|
|
GOOGLE_CLOUD_PROJECT_ID=your-project-id
|
|
GOOGLE_BILLING_DATASET_ID=billing_export
|
|
|
|
# ============================================
|
|
# 📧 이메일 서비스 (선택)
|
|
# ============================================
|
|
|
|
# Resend 이메일 API
|
|
# - 용도: 비밀번호 재설정, 알림 이메일 발송
|
|
# - 발급: https://resend.com/ (가입 후 API 키 발급)
|
|
# - 무료 할당량: 월 100통
|
|
# - 설정 안 하면 이메일 기능 비활성화 (앱은 정상 작동)
|
|
RESEND_API_KEY=your-resend-api-key
|
|
RESEND_FROM_EMAIL=CastAD <noreply@yourdomain.com>
|
|
|
|
# ============================================
|
|
# 🔐 소셜 로그인 (선택)
|
|
# ============================================
|
|
|
|
# Google OAuth 로그인
|
|
# - 용도: "Google로 로그인" 기능
|
|
# - 발급: Google Cloud Console → 사용자 인증 정보 → OAuth 2.0
|
|
# - 리디렉션 URI: http://localhost:3001/auth/google/callback
|
|
GOOGLE_CLIENT_ID=your-google-client-id
|
|
GOOGLE_CLIENT_SECRET=your-google-client-secret
|
|
|
|
# Naver OAuth 로그인
|
|
# - 용도: "네이버로 로그인" 기능
|
|
# - 발급: https://developers.naver.com/ → 애플리케이션 등록
|
|
# - 리디렉션 URI: http://localhost:3001/auth/naver/callback
|
|
NAVER_CLIENT_ID=your-naver-client-id
|
|
NAVER_CLIENT_SECRET=your-naver-client-secret
|
|
|
|
# ============================================
|
|
# 📱 SNS 연동 (선택)
|
|
# ============================================
|
|
|
|
# Instagram 서비스 (Python 마이크로서비스)
|
|
# - 용도: Instagram 자동 업로드
|
|
# - 별도 설치 필요: server/instagram-service/
|
|
# - 의존성: Python 3.8+, Fernet 암호화
|
|
INSTAGRAM_SERVICE_URL=http://localhost:5001
|
|
INSTAGRAM_SERVICE_PORT=5001
|
|
INSTAGRAM_ENCRYPTION_KEY=your-fernet-encryption-key
|
|
|
|
# TikTok API
|
|
# - 용도: TikTok 영상 업로드
|
|
# - 발급: https://developers.tiktok.com/ → 앱 생성
|
|
# - 리디렉션 URI: http://localhost:3001/api/tiktok/oauth/callback
|
|
TIKTOK_CLIENT_KEY=your-tiktok-client-key
|
|
TIKTOK_CLIENT_SECRET=your-tiktok-client-secret
|
|
|
|
# ============================================
|
|
# 🔧 기타 설정 (선택)
|
|
# ============================================
|
|
|
|
# Naver 크롤링 쿠키 (선택)
|
|
# - 용도: 네이버 지도에서 펜션 정보/사진 크롤링
|
|
# - 획득 방법: 브라우저 개발자 도구 (F12) → Application → Cookies에서 복사
|
|
# - 주의: 쿠키 만료 시 재설정 필요 (또는 관리자 대시보드에서 설정)
|
|
# NAVER_COOKIES="NNB=xxx; JSESSIONID=xxx"
|
|
|
|
# Instagram 크롤링 쿠키 (선택)
|
|
# - 용도: 인스타그램 프로필에서 펜션 사진 크롤링
|
|
# - 획득 방법: 인스타그램 로그인 후 개발자 도구에서 쿠키 복사
|
|
# - 필수 쿠키: sessionid, csrftoken, ds_user_id
|
|
# - 주의: 쿠키 만료 시 재설정 필요 (또는 관리자 대시보드에서 설정)
|
|
# INSTAGRAM_COOKIES="sessionid=xxx; csrftoken=xxx; ds_user_id=xxx"
|
|
|
|
# ============================================
|
|
# 📝 설정 체크리스트
|
|
# ============================================
|
|
# 최소 필수 설정 (앱 실행에 필요):
|
|
# ✅ JWT_SECRET
|
|
# ✅ VITE_GEMINI_API_KEY
|
|
# ✅ SUNO_API_KEY
|
|
#
|
|
# 권장 설정 (주요 기능 활성화):
|
|
# ⬜ TOURAPI_KEY (축제 연동)
|
|
# ⬜ KAKAO_REST_KEY (위치 기반 축제 검색)
|
|
# ⬜ YouTube client_secret.json (YouTube 업로드)
|
|
#
|
|
# 선택 설정 (부가 기능):
|
|
# ⬜ RESEND_API_KEY (이메일 발송)
|
|
# ⬜ GOOGLE_CLIENT_ID/SECRET (Google 로그인)
|
|
# ⬜ NAVER_CLIENT_ID/SECRET (네이버 로그인)
|
|
# ⬜ TIKTOK_CLIENT_KEY/SECRET (TikTok 업로드)
|
|
# ⬜ INSTAGRAM_* (Instagram 업로드)
|
|
# ⬜ GOOGLE_BILLING_* (비용 분석)
|