ai-startup-skills
AI 제품을 만드는 스타트업을 위한 7단계 에이전트 스킬: 검증 → 비즈플랜 → 정책 → 로드쇼 → 고객 확보 → 가격 책정 → 등록
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기나뭇잎 마을 내전 기록소
저장소 README에서 가져옴
README 전체를 불러오는 중입니다.
README 전문 보기 ↗친구들과의 리그 오브 레전드 커스텀 게임 기록을 자동으로 집계하고 통계·랭킹·업적을 제공하는 웹 애플리케이션
배포 주소: https://leaf-town-records.vercel.app
친구 10~13명이 주기적으로 리그 오브 레전드 내전(커스텀 게임)을 진행하는데, 공식 전적 사이트(OP.GG 등)는 커스텀 게임을 기록하지 않는다. 매번 결과를 수기로 공유하다 보니 "누가 제일 잘해?", "나 몇 연승이야?" 같은 궁금증이 해결되지 않았다.
이를 해결하기 위해 게임 결산 스크린샷 한 장으로 전적 등록부터 통계 시각화까지 자동화한 전용 기록 시스템을 직접 설계·개발했다.
| 기능 | 설명 |
|---|---|
| AI 스크린샷 분석 | 게임 결산 화면 캡처를 업로드하면 Claude Vision이 닉네임·승패를 자동 추출 |
| 다전제 시리즈 집계 | 3판2선·5판3선 형식을 인식하고 개인전이 아닌 시리즈 단위로 승패 산정 |
| 통합 랭킹 | 점수(승 +3 / 패 -1) 기준 밀집 순위, 연승·연패 실시간 표시 |
| 플레이어 상세 통계 | 챔피언별 전적, 포지션별 승률, 1:1 상대전적, 시너지 분석 |
| 업적 시스템 | 일반·희귀·영웅·전설·신화 5등급 45종 업적, 대표업적 커스텀 설정 |
| 팀 편성 | 참가자 선택 → 팀 배정 → 미니게임으로 블루/레드 사이드 결정 → 공지 복사 |
| 닉네임 변경 이력 관리 | 닉네임 변경 시 전체 게임 기록 일괄 업데이트 |
문제: 커스텀 게임은 Riot 공식 API에 노출되지 않아 자동 수집이 불가능하다.
해결: Claude Sonnet Vision API에 결산 화면 이미지를 전송하고 JSON 구조로 파싱하도록 프롬프트를 설계했다.
[ 스크린샷 ] → Claude Vision API → { winTeam, team1: [...], team2: [...] }
문제: 같은 사람이 다른 닉네임으로 기록될 수 있는 경우가 여러 가지다.
Shade vs shade)해결 1 — 정규화 키: 모든 닉네임 비교 시 normalizeId(공백제거 + 소문자) 함수를 일관 적용해 대소문자 차이를 흡수한다.
해결 2 — 닉네임 변경 일괄 업데이트: 닉네임 관리 페이지에서 "닉네임 변경"을 실행하면 저장된 전체 게임 기록을 스캔해 이전 닉네임을 새 닉네임으로 교체한다. 부계정 목록이 무한정 쌓이는 문제를 해소했다.
해결 3 — 실명 기반 통합 집계: 상대전적·시너지 통계를 집계할 때 닉네임 → 실명(realName) 변환 맵을 사전 구성하고 키로 실명을 사용한다. 주·부계정, 닉네임 변경 이전 기록이 모두 같은 사람으로 자동 합산된다.
"Shade"(주계정) ─┐
"Shadow"(구닉네임) ─┤ → 실명 "홍길동" 으로 통합 집계
"shade"(대소문자) ─┘
문제: 롤 내전은 3판2선·5판3선 형식이라 개인전 단위 승패로는 의미 있는 랭킹이 나오지 않는다.
해결: 날짜별로 게임 기록을 묶어 시리즈를 구성하고, 한 팀이 필요 승수(2승 또는 3승)를 달성했을 때만 isComplete = true로 처리한다. 모든 통계(승률·점수·연승·업적)는 시리즈 완료 기준으로만 산정한다.
날짜별 그룹 → 선취 승수 달성 여부 판별 → isComplete = true → 승패 집계
단순 플레이 수 카운트를 넘어 관계 기반 업적(포지션 듀오, 상대 전적, 시너지)을 구현했다.
computeAggregatedStats에서 주·부계정 합산 시 vsStats·withStats·positionStats·업적을 모두 병합해 통합 뷰 제공| 분류 | 기술 |
|---|---|
| Framework | Next.js 16 (App Router) |
| Language | TypeScript |
| Styling | Tailwind CSS 4 + CSS Variables (다크 테마) |
| Database | Vercel KV (Upstash Redis — 서버리스 영구 저장) |
| AI | Anthropic Claude claude-sonnet-4-6 (Vision API) |
| 외부 API | Riot Data Dragon (최신 챔피언 목록 자동 동기화) |
| 배포 | Vercel |
# 1. 패키지 설치
npm install
# 2. 환경 변수 설정 (.env.local)
KV_REST_API_URL=your_kv_url
KV_REST_API_TOKEN=your_kv_token
ANTHROPIC_API_KEY=your_anthropic_key
# 3. 개발 서버
npm run dev
#0c0c0e 및 딥 차콜 패널 배경 위에, 무한 츠쿠요미의 붉은 달이 비치는 은은한 광원 효과를 배경 그라디언트로 튜닝했습니다.transform 덮어쓰기 현상을 더블 컨테이너(래퍼) 구조로 분리하여 구름 찌그러짐 현상을 해결했습니다.Tab 및 Shift+Tab 입력 시 닉네임을 건너뛰고 챔피언명 입력 필드로만 세로 방향 신속 이동하도록 지원합니다."")으로 초기화하여 사용자가 직접 정밀 등록할 수 있도록 최적화했습니다."애니비아애" 등)을 isComposing 상태 제어로 완벽히 방지하여 편안한 Hangul 입력 속도를 보장합니다.<main> 엘리먼트에 고정되어 있던 z-10 스태킹 컨텍스트를 제거하여, 대표업적 선택 모달(BadgeModal)을 비롯한 모든 모달 창(z-50)이 상단 네비게이션 헤더(z-40) 위에 잘리지 않고 완벽하게 최상단 오버레이 레이어로 렌더링되도록 수정했습니다.hokage_rock_pixel.png)로 변환했습니다.objectPosition: "left bottom")과 오른쪽 절반(objectPosition: "right bottom")으로 분할 대칭 배치하여, 중앙의 본문 콘텐츠를 중심으로 1~7대 호카게 석상이 균형 있게 정렬됩니다.--bg: #f3f3f3) 위에서 하늘색 등 밝은 영역을 완전히 없애기 위해 흑백 필터(grayscale(100%))와 mixBlendMode: "multiply" 기법을 동일 적용했습니다.radial-gradient 마스킹을 씌웠습니다.var(--border-green))에 걸맞는 어두운 붉은색 외곽선 실루엣(opacity: 0.22)과 컷아웃 구멍을 입혀 매트 블랙 다크 모드에 몰입감과 미스터리함을 부여했습니다.