Commits
GitHub 커밋 기반으로 자동 생성된 개발 기록
ether-blog
Admin 설정 페이지 통합 및 관리자 기능 확장
🤖 1302 in / 1181 out / 2483 total tokens Prisma 스키마에 키-값 형태의 Setting 모델을 추가하고, 사이트 설정, AI 글 생성, API 키 관리 등 5개 섹션을 접이식으로 정리했습니다. 환경 변수 상태 확인 API를 구현하고 Next.js 인증 타입 선언을 수정해 빌드 에러를 해결했습니다. 어드민 네비게이션에
어드민 인증 시스템 도입 및 웹훅 관리 기능 강화
🤖 878 in / 1573 out / 2451 total tokens 어드민 페이지 접근을 위해 Credentials provider를 구현하여 ID와 비밀번호를 환경 변수로 관리하도록 수정했습니다. 로그인 페이지를 새로 생성하고 미인증 시 자동 리다이렉트되는 로직을 적용하여 보안을 강화했습니다. 또한 설정 페이지에 웹훅 재설치와 레포 동기화 버튼을
레포 자동 동기화와 webhook 재설치 API 만들다
🤖 671 in / 715 out / 1386 total tokens 최근 4개월간 활동한 레포를 자동으로 감지해 등록하는 sync API를 추가했다. cron에서 호출할 땐 GET + secret 파라미터로, 어드민 대시보드에선 POST + 세션 인증으로 동작한다. 이렇게 하면 주기적으로 새 레포를 블로그에 동기화하면서도 보안을 유지할 수 있다.
WatchedRepo 등록/삭제 시 GitHub 웹훅 자동 관리
🤖 900 in / 1426 out / 2326 total tokens Prisma 스키마에 githubHookId 필드를 추가하여 저장소 식별이 용이해졌습니다. 레포 생성 시 GitHub API를 호출해 웹훅을 자동 생성하고 ID를 저장합니다. 삭제 시에는 연결된 웹훅을 정리하거나 기존 ID를 재사용합니다. 웹훅 생성 실패 시에도 레포 등록 과정은
커밋 기반 글 작성에 brief 모드와 ISR 캐시 갱신 추가
🤖 934 in / 652 out / 1586 total tokens 커밋 webhook으로 생성되는 글을 짧고 굵은 개발일지 형태로 바꿨다. 기존엔 긴 폼 포맷이어서 커밋 단위 글에는 과했다. 이제 brief 모드 프롬프트가 별도로 있고, 500~1000자 내외로 핵심만 남긴다. 문체도 "~다" 체로 고정해서 일관성 챙겼다. 글 상단에 토큰 사용량
빌드 시 DB 미연결 시 RSS와 Sitemap 에러 방지
🤖 627 in / 1360 out / 1987 total tokens 빌드 환경에서 DB 접속이 불안정할 때 발생하는 에러를 방지하기 위해 sitemap.ts와 rss.xml/route.ts의 Prisma 호출을 try-catch로 감쌌습니다. DB 미연결 시 빈 배열을 반환하여 빌드 실패나 502 에러가 발생하지 않도록 안정성을 확보했습니다. 또한
사이드바 반응형 레이아웃 개선 및 다크모드 가독성 강화
🤖 629 in / 1585 out / 2214 total tokens 모바일 환경에서 사이드바를 하단에 배치하여 포스트 리스트와 함께 표시되도록 변경했습니다. 데스크탑 화면에서는 오른쪽에 고정된 사이드바를 통해 2단 레이아웃을 구현했습니다. 다크모드 시 텍스트가 흐릿해지는 문제를 해결하기 위해 사이드바에 배경색과 테두리를 추가했습니다. 페이지 전체
Gongnog
다크 테마 가독성 문제, CSS 변수 하나로 정리
🤖 1464 in / 808 out / 2272 total tokens 다크 테마에서 텍스트가 검정색으로 튀어 나오던 문제를 잡았다. 원인은 간단했다. app에 color 속성이 없어서 명시적 색상이 없는 요소들이 브라우저 기본값(검정)을 상속받은 것. app.css에서 app에 color: var(--t1)을 추가하니 깔끔하게 해결됐다. 같은 맥락
도움말 버튼, 오늘 날짜 오른쪽으로 이동
🤖 410 in / 868 out / 1278 total tokens 캘린더 헤더의 물음표 버튼 위치를 조정했다. 기존엔 오늘 날짜 왼쪽에 있던 걸 오른쪽으로 옮겼다. 단순한 마크업 순서 변경이라 CSS 수정 없이 DOM 순서만 바꿔서 해결했다. svelte <div class="today-row" <span class="today-date"{n