프로젝트 소개

Egg Shen Bot은 엔터테인먼트 탐색과 커뮤니티 활동에 초점을 맞춘 기능이 풍부한 자체 호스팅 가능 Discord 봇입니다. 영화, TV 프로그램, 에피소드, 비디오 게임, 보드 게임, 책 등 일곱 가지 미디어 유형을 검색하여 여러 출처에서 집계한 줄거리와 평점이 담긴 풍부한 임베드와 각 서비스의 해당 미디어 페이지 링크를 반환합니다. 명시된 평점/링크 출처에는 IMDb, Letterboxd, Trakt, Rotten Tomatoes, JustWatch가 있으며, 스트리밍 제공 여부는 TMDB 및 Watchmode 연동을 통해 처리됩니다. 검색 외에도 이 봇은 4~12개 그룹의 조별 리그, 와일드카드, 단일 토너먼트 녹아웃 라운드를 지원하는 토너먼트 대진표 시스템을 제공합니다. 함께 보기 도구에는 타이머, 시청 기록 추적, 서버 통계, 그리고 공지 명령이 포함됩니다. 소셜 기능에는 대화형 투표, 사운드트랙 검색, "magic potion" 명령, 선택적 AI 이미지 생성이 있습니다. 선택적 이벤트 요청 기능을 사용하면 커뮤니티 구성원이 Discord OAuth를 사용하는 웹 양식을 통해 함께 보기 요청을 제출할 수 있습니다. 운영자가 승인하거나 거부하며, 승인된 이벤트는 Discord 예약 이벤트로 생성됩니다. 서버 관리는 구성 명령을 통한 설정 가능한 권한, 평점 서비스 토글, 지역 선호도, 사용자 지정 이모지를 다루며, 재시작 및 통계를 위한 관리 명령도 제공합니다. 이 프로젝트는 비용 보호를 위한 내장 속도 제한, 알림/리마인더, 사용 통계를 문서화합니다. 배포는 자체 호스팅 방식입니다. 각 인스턴스는 독립적이며 자체 Discord 애플리케이션, 자체 서버, 설정·타이머·토너먼트를 위한 자체 로컬 데이터 파일을 사용하고, 공유 백엔드나 중앙 계정이 없습니다. 요구 사항은 Node.js 20 이상, Discord 봇 토큰, TMDB API 키이며, Watchmode, OMDb, Trakt, RAWG, Google Books, OpenAI용 키는 선택 사항입니다. 설정은 저장소 복제, 의존성 설치, .env 파일 구성, 슬래시 명령 배포, 봇 시작으로 이루어집니다. 코드베이스는 src/commands, src/services, src/utils, public(이벤트 요청 웹 양식), docs(VitePress 문서) 아래에서 확장할 수 있도록 구성되어 있으며, MIT 라이선스로 배포됩니다.