Admin 설정 페이지 통합 및 관리자 기능 확장
commitsether-blog · e044a56

Admin 설정 페이지 통합 및 관리자 기능 확장

🤖 1302 in / 1181 out / 2483 total tokens Prisma 스키마에 키-값 형태의 Setting 모델을 추가하고, 사이트 설정, AI 글 생성, API 키 관리 등 5개 섹션을 접이식으로 정리했습니다. 환경 변수 상태 확인 API를 구현하고 Next.js 인증 타입 선언을 수정해 빌드 에러를 해결했습니다. 어드민 네비게이션에

이더2026.03.111 min read
AdminSettingsPrisma
어드민 인증 시스템 도입 및 웹훅 관리 기능 강화
commitsether-blog · f94cec9

어드민 인증 시스템 도입 및 웹훅 관리 기능 강화

🤖 878 in / 1573 out / 2451 total tokens 어드민 페이지 접근을 위해 Credentials provider를 구현하여 ID와 비밀번호를 환경 변수로 관리하도록 수정했습니다. 로그인 페이지를 새로 생성하고 미인증 시 자동 리다이렉트되는 로직을 적용하여 보안을 강화했습니다. 또한 설정 페이지에 웹훅 재설치와 레포 동기화 버튼을

이더2026.03.111 min read
레포 자동 동기화와 webhook 재설치 API 만들다
commitsether-blog · 98a6a9f

레포 자동 동기화와 webhook 재설치 API 만들다

🤖 671 in / 715 out / 1386 total tokens 최근 4개월간 활동한 레포를 자동으로 감지해 등록하는 sync API를 추가했다. cron에서 호출할 땐 GET + secret 파라미터로, 어드민 대시보드에선 POST + 세션 인증으로 동작한다. 이렇게 하면 주기적으로 새 레포를 블로그에 동기화하면서도 보안을 유지할 수 있다.

이더2026.03.111 min read
Next.jsAPIGitHub
WatchedRepo 등록/삭제 시 GitHub 웹훅 자동 관리
commitsether-blog · c0dc161

WatchedRepo 등록/삭제 시 GitHub 웹훅 자동 관리

🤖 900 in / 1426 out / 2326 total tokens Prisma 스키마에 githubHookId 필드를 추가하여 저장소 식별이 용이해졌습니다. 레포 생성 시 GitHub API를 호출해 웹훅을 자동 생성하고 ID를 저장합니다. 삭제 시에는 연결된 웹훅을 정리하거나 기존 ID를 재사용합니다. 웹훅 생성 실패 시에도 레포 등록 과정은

이더2026.03.111 min read
githubwebhookautomation
커밋 기반 글 작성에 brief 모드와 ISR 캐시 갱신 추가
commitsether-blog · 68115ef

커밋 기반 글 작성에 brief 모드와 ISR 캐시 갱신 추가

🤖 934 in / 652 out / 1586 total tokens 커밋 webhook으로 생성되는 글을 짧고 굵은 개발일지 형태로 바꿨다. 기존엔 긴 폼 포맷이어서 커밋 단위 글에는 과했다. 이제 brief 모드 프롬프트가 별도로 있고, 500~1000자 내외로 핵심만 남긴다. 문체도 "~다" 체로 고정해서 일관성 챙겼다. 글 상단에 토큰 사용량

이더2026.03.111 min read
next.jsisrclaude-api
빌드 시 DB 미연결 시 RSS와 Sitemap 에러 방지
commitsether-blog · 3b781ff

빌드 시 DB 미연결 시 RSS와 Sitemap 에러 방지

🤖 627 in / 1360 out / 1987 total tokens 빌드 환경에서 DB 접속이 불안정할 때 발생하는 에러를 방지하기 위해 sitemap.ts와 rss.xml/route.ts의 Prisma 호출을 try-catch로 감쌌습니다. DB 미연결 시 빈 배열을 반환하여 빌드 실패나 502 에러가 발생하지 않도록 안정성을 확보했습니다. 또한

이더2026.03.111 min read
사이드바 반응형 레이아웃 개선 및 다크모드 가독성 강화
commitsether-blog · 1c9a26f

사이드바 반응형 레이아웃 개선 및 다크모드 가독성 강화

🤖 629 in / 1585 out / 2214 total tokens 모바일 환경에서 사이드바를 하단에 배치하여 포스트 리스트와 함께 표시되도록 변경했습니다. 데스크탑 화면에서는 오른쪽에 고정된 사이드바를 통해 2단 레이아웃을 구현했습니다. 다크모드 시 텍스트가 흐릿해지는 문제를 해결하기 위해 사이드바에 배경색과 테두리를 추가했습니다. 페이지 전체

이더2026.03.111 min read
responsivesidebardark-mode
메인 페이지에 최근글 사이드바 추가
commitsether-blog · 3bb7ec8

메인 페이지에 최근글 사이드바 추가

🤖 1042 in / 764 out / 1806 total tokens 메인 페이지에 최근글 사이드바를 추가해 2단 레이아웃을 구성했다. RecentPostsSidebar 컴포넌트를 새로 만들었고, 각 글 앞에 카테고리 색상 dot을 표시한 뒤 제목과 날짜를 보여준다. PostList에 bare prop을 추가해 사이드바 옆에서는 불필요한 wrappe

이더2026.03.111 min read
nextjsreactlayout
ISR 전환 및 일일 작성량 제한 적용
commitsether-blog · d6484f6

ISR 전환 및 일일 작성량 제한 적용

🤖 1531 in / 1808 out / 3339 total tokens 공개 페이지 11개를 ISR로 전환하여 1시간마다 자동 갱신되도록 설정하고, 관리자 페이지는 여전히 force-dynamic을 유지한다. 글 생성 시점에 즉시 캐시를 갱신하는 API를 구현하며, 커밋 필터링 로직을 개선한다. trivialPatterns의 길이 제거 및 bump,

이더2026.03.111 min read
Next.jsISRPerformance
조회수 집계를 일별로 전환하고 비정규화 필드 도입
commitsether-blog · 642b28e

조회수 집계를 일별로 전환하고 비정규화 필드 도입

🤖 1382 in / 1494 out / 2876 total tokens 조회수 집계 구조를 행 단위에서 일별 집계로 변경하고 Post 테이블에 비정규화된 viewCount 필드를 추가해 쿼리 효율을 높였습니다. 뷰트래커에 세션 스토리지 기반 중복 조회 방지 로직을 적용하고, 메타데이터 생성 시 React cache를 사용해 불필요한 DB 쿼리를 제거

이더2026.03.111 min read
refactoringanalyticsperformance