- app/services/website/page.tsx: Google Fonts (Syne, Noto Sans KR) 제거
→ 사이트 공통 폰트 CookieRun으로 교체, @import 제거
- app/services/automation/page.tsx: 자동화 도구 무료 다운로드 섹션 추가
- 엑셀 자동화 도구(배포), 웹 스크래핑·이메일 자동화(준비중) 카드
- 각 카드 → 상세 서브페이지 링크 연결
- app/services/automation/tools/excel/page.tsx: 신규 생성
- 엑셀 매크로 툴킷 상세 페이지 (기능 6가지, 사용법, 미리보기 목업, FAQ)
- 무료 다운로드 버튼 (/downloads/Excel_Macro_Toolkit_v1.2.xlsm)
- 맞춤 개발 문의 CTA
- public/downloads/: 다운로드 파일 배치 디렉토리 생성
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- app/auth/callback/route.ts: NEXT_PUBLIC_SITE_URL 우선, x-forwarded-host 폴백
Vercel 내부 라우팅에서 request.url의 origin이 localhost로 잡히는 경우 대응
- app/login/page.tsx: signInWithOAuth redirectTo를 NEXT_PUBLIC_SITE_URL 기준으로 변경
window.location.origin 대신 명시적 환경변수 사용으로 안정성 확보
Vercel 환경변수에 NEXT_PUBLIC_SITE_URL=https://<도메인> 추가 필요
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- lib/solar-terms.ts: solarlunar → lunar-javascript로 전면 교체
- getSolarTermDate(): LunarYear.fromYear().getJieQiJulianDays() 사용 (시분 단위 정밀도)
- 소한(22)/대한(23)은 year-1로 조회해 해당 연도 1월 날짜 정확히 반환
- getCurrentSolarTerm(): 입춘 기준 두 구간 분리, Date.UTC() 비교
- lib/daeun-calculator.ts: getSolarTermDate 정확도 향상으로 termYear 수동 보정 제거
- lib/saju-calculator.ts: 일주 기준일 甲戌, Date.UTC(), 오호둔월법 공식 적용
- lib/ai-interpretation.ts: 신약 용신 후보 내림차순 정렬 수정
- app/saju/result/page.tsx: Python 엔진(fetchFromPythonEngine) 완전 제거, TS 전용
- app/api/saju/calculate/route.ts: Python 프록시 라우트 삭제
- app/saju/page.tsx: fromHistory 파라미터 제거
- types/lunar-javascript.d.ts: 타입 선언 파일 추가
검증 케이스(1992-12-23 16:30 남성): 壬申/壬子/癸酉/庚申
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- 홈 카드: 월 4,900원 → 900원~, 플랜명 골드/플래티넘/다이아로 수정
- 관리자 대시보드: 활성 구독자 수 카드 추가
- 관리자 회원 목록: 구독 현황(플랜명, 만료일) 컬럼 추가
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- subscriptions 테이블 마이그레이션 (기존 paid orders에서 자동 생성)
- GET/PATCH /api/subscription: 구독 조회, 해지, 자동갱신 토글
- 마이페이지 구독 관리 탭: D-day, 해지 버튼, 자동갱신 토글
- 해지 시 만료일까지 서비스 계속 이용 가능
- Vercel Cron: 매일 01:00 KST 만료 구독 자동 처리 + 텔레그램 알림
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- POST /api/lotto/history: 생성 번호 저장 API
- GET /api/lotto/history: 히스토리 조회 API
- 번호 생성 시 자동 히스토리 저장 (NAS/클라이언트 출처 구분)
- 합계 표시 복원
- 마이페이지: 활성 구독 카드 (D-day, 만료일 표시)
- 마이페이지: 로또 기록 탭 추가 (번호볼 + 출처 + 플랜 표시)
- Supabase 마이그레이션: lotto_history 테이블
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- 로또 번호 추천 구독자 전용 페이지 (/services/lotto/recommend)
- NAS 몬테카를로 API 연동 + 클라이언트 사이드 폴백
- 무료 미리보기 1개 + 구독자용 프리미엄 번호 추천
- 구독 플랜 변경: 골드(900원)/플래티넘(2,900원)/다이아(9,900원)
- 텔레그램 봇 연동: 연결/해제, 웹훅, /start 명령 처리
- 마이페이지 텔레그램 연결 UI + 가이드 모달
- 관리자 페이지 (/admin): 대시보드, 회원, 서비스, 문의 관리
- Supabase 마이그레이션: profiles 텔레그램 컬럼, 신규 상품
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
개발 기술 스택·배포 가이드 중심에서 서비스 가치·이용 방법 중심으로 변경.
AI 사주 분석, 로또 추천, 주식 자동매매, 업무 자동화, 외주 개발 각 서비스
특징과 바로가기 링크 포함. 운영자 소개 및 문의 방법 명시.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- 전체 디자인 시스템 개편: 딥 네이비 (#04102b) + 로열 블루 (#1a56db) 팔레트
- 홈 대시보드: 가운데 정렬, 서비스별 고유 카드 디자인 (로또/주식/프롬프트/자동화)
- 서비스 페이지 4종: 각 서비스 테마 색상 + 장식 요소 + 가운데 정렬 레이아웃
- 외주 개발 페이지: 라이브 카운터 (진행중/상담중/납품완료), 수직 타임라인
- ContactModal 컴포넌트: 서비스별 모달 문의폼 + 체크리스트 (페이지 이동 없이 문의)
- CookieRun 폰트 적용 (Regular/Bold/Black, 상업적 이용 가능 라이선스)
- 실명 '박재오' → '쟁토리' 전체 변경, 7년차 강조 홈 페이지에만 표시
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- from 필드를 onboarding@resend.dev로 변경 (Resend 기본 도메인)
- reply_to 필드 추가 (문의자 이메일로 답장 가능)
- 커스텀 도메인 인증 없이 바로 사용 가능
테스트 완료: 이메일 발송 정상 작동 확인
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
- Resend API 통합 (이메일 발송)
- ContactForm 클라이언트 컴포넌트 생성
- API Route (/api/contact) 구현
- 입력 검증 및 에러 처리
- 성공/실패 메시지 표시
- 환경변수 설정 (.env.local, .env.example)
- 배포 가이드 작성 (DEPLOYMENT.md)
- Resend 설정 방법
- Vercel 배포 가이드
- 가비아 도메인 연결 방법
- 트러블슈팅 가이드
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>