프로젝트 소개

PWA Karaoke는 모든 기기를 노래방 시스템으로 바꿔 주는 웹 기반 노래방 애플리케이션입니다. 전적으로 브라우저에서 실행되며 Docker Compose, 독립 실행형 Docker, 수동 설정 방법을 지원합니다. 주요 기능: - 다중 기기 역할: 휴대폰이나 태블릿을 컨트롤러로 사용해 노래를 검색하고 관리하며, 웹 사용이 가능한 모든 기기(TV, 프로젝터, 모니터)는 영상 재생과 노래 대기열을 보여 주는 디스플레이 역할을 합니다. - 다중 방 지원: 여러 개의 독립적인 노래방 방을 만들 수 있으며, 각 방은 선택적으로 비밀번호로 보호할 수 있습니다. - 노래 검색 및 대기열 등록: 동영상 스트리밍 플랫폼에서 노래를 검색하고 재생 대기열에 추가합니다. - 자동 재생: 예약된 노래는 기본적으로 순차 재생되며, 자동 재생 토글로 수동 제어가 가능합니다. - 점수: 노래가 끝나면 점수가 매겨지며, 컨트러의 "Mic Check" 기능을 통해 마이크 입력을 지원합니다. - 닉네임: 컨트롤러는 최대 14자까지의 닉네임으로 사용자를 식별하며, 이 닉네임은 디스플레이에서 예약된 노래 옆에 표시됩니다. - QR 코드 페어링: 디스플레이의 대기 화면에 표시된 QR 코드를 스캔해 컨트롤러를 디스플레이에 빠르게 연결합니다. 설정 션: - Docker Compose(권장): 단일 명령으로 백엔드와 Caddy 웹 서버를 시작합니다. - Docker: 컨테이너를 별도로 빌드하고 실행합니다. - 수동: Python 3.11+, Node.js 20+, 동영상 처리를 위한 yt-dlp가 필요합니다. 시스템 요구 사항: 최소 2GB RAM, 1 vCPU. 개인적, 비상업적 용도를 위한 것입니다. MIT 라이선스가 적용됩니다.