본문으로 건너뛰기

트렌딩 - GitHub 인기 레포 & HuggingFace 모델

missuo/kumone

Swift0 / 0

SwiftUI로 만든 macOS용 NetEase Cloud Music 비공식 클라이언트

TL;DR

Kumone은 SwiftUI와 Swift 6.2로 만든 macOS 15+용 NetEase Cloud Music 비공식 클라이언트입니다. QR code 로그인, 개인화 추천, 플레이리스트 관리, AVPlayer 재생, 동기화 가사, 데스크톱 가사 창을 하나의 Native 앱에 묶고 NetEase API에 직접 연결합니다. weapi·eapi 암호화와 쿠키 저장을 Swift로 처리하며, 회색 트랙은 pyncmd·Kuwo·Kugou 기반 대체 음원 소스로 해소합니다. macOS용 음악 앱을 직접 빌드하거나 기능을 확장하려는 개발자에게 적합하지만 NetEase 계정·API 의존성과 제3자 음원 사용 조건은 도입 전에 확인해야 합니다.

핵심 포인트

  • macOS 15+에서 동작하는 SwiftUI 기반 NetEase Cloud Music 비공식 Native 클라이언트입니다. QR code 로그인 뒤 쿠키를 로컬에 저장하고 자동 갱신하며, Apple Silicon과 Intel을 모두 지원합니다. Homebrew Cask나 서명·공증된 Release 앱으로 설치할 수 있어 macOS 사용자에게 바로 시험하기 좋습니다.
  • 재생 기능은 AVPlayer와 통합되어 Standard부터 Hi-Res까지 음질을 선택하고, 셔플·반복·재생 대기열·최근 재생 상태를 처리합니다. 회색 트랙은 pyncmd·Kuwo·Kugou 소스를 사용하는 UnblockService가 대체 음원 URL을 찾도록 구성되어 있습니다. 다만 제3자 음원을 활용하므로 NetEase Cloud Music의 정책과 음원 권리 조건을 확인한 뒤 사용해야 합니다.
  • API 호출에 별도 서버를 두지 않고 Swift 코드가 music.163.com과 interface.music.163.com에 직접 요청합니다. weapi는 이중 AES-CBC와 RSA를, eapi는 AES-ECB와 MD5 digest를 Native 구현하며 NeteaseClient가 전송과 쿠키를 관리합니다. Swift 코드를 직접 빌드하거나 수정하려는 개발자에게 네트워크 계층과 Player 계층의 경계가 비교적 분명합니다.
  • Home에는 일일 추천·Personal FM·Heartbeat Mode·추천 플레이리스트·차트가 있고 Explore에는 카테고리별 플레이리스트와 infinite scrolling이 있습니다. Library에서는 좋아요한 곡, 생성·구독 플레이리스트, 저장 앨범, 팔로우 아티스트, 최근 재생, Cloud Disk를 관리합니다. 데스크톱 가사 창과 Now Playing 연동까지 포함해 단순 음악 재생기보다 계정 기반 서비스 클라이언트에 가깝습니다.

이미지 분석

Kumone의 macOS Home 화면에서 일일 추천, Personal FM, Heartbeat Mode, 추천 플레이리스트와 차트가 카드형 UI로 배치되어 있습니다.
화면은 왼쪽 탐색 영역과 중앙 콘텐츠 영역으로 나뉘며, 상단 추천 카드에서 개인화 기능으로 진입하고 아래에서 플레이리스트와 차트를 훑는 구조입니다. 하단 고정 Player bar에는 현재 곡, 재생 제어, 진행 시간, 가사·대기열·음량 접근점이 함께 배치되어 README의 데스크톱 음악 앱 방향과 연결됩니다.
현재 재생 화면에서 앨범 아트와 곡 정보가 왼쪽에, 크게 표시된 동기화 가사가 오른쪽에 배치되어 있습니다.
앨범 아트의 색감을 활용한 어두운 배경 위에 재생 진행 막대와 이전·일시정지·다음·반복 제어가 놓여 있습니다. 오른쪽 가사는 현재 줄을 밝게 표시하고 나머지 줄을 흐리게 처리해, README의 immersive now-playing page와 line-synced lyrics 구현을 시각적으로 확인하게 합니다.
일일 추천 화면에 날짜와 갱신 안내가 표시되고, 추천 곡이 번호·앨범 아트·곡명·아티스트·재생 시간 목록으로 정리되어 있습니다.
상단 배너의 일일 추천 영역에서 전체 재생을 시작할 수 있으며, 아래 목록은 곡별 메타데이터와 재생 시간을 한 줄 단위로 제공합니다. README가 밝힌 일일 추천 기능과 계정별 음악 취향 기반 갱신 흐름을 실제 화면 구성을 통해 확인할 수 있습니다.
일일 추천 화면 오른쪽에 반투명 가사 패널이 열리고 현재 재생 중인 곡의 가사가 줄 단위로 표시됩니다.
가사 패널은 기존 플레이리스트를 가리지 않도록 오른쪽에 겹쳐 나타나며, 현재 줄을 진하게 표시하고 이전·이후 줄을 낮은 대비로 처리합니다. 하단 Player bar의 가사 버튼과 연결된 패널 형태라서 README의 번역 가사와 클릭 기반 탐색 기능을 위한 UI 구조가 드러납니다.

708

STARS

47

FORKS

+205

TRENDING

0

조회수

watchers 708open issues 1GNU Lesser General Public License v3.0

관련 토론

아직 관련 토론이 없습니다.

댓글

댓글을 작성하려면 로그인이 필요합니다.