{
  "schema": "tesign-radar/item/1",
  "generated_at": "2026-09-17T01:56:13.055Z",
  "lang": "ko",
  "slug": "sonora",
  "url": "https://tesign.com/item/sonora/",
  "alternates": {
    "ko": {
      "html": "https://tesign.com/item/sonora/",
      "json": "https://tesign.com/item/sonora/index.json",
      "markdown": "https://tesign.com/item/sonora/index.md"
    },
    "en": {
      "html": "https://tesign.com/en/item/sonora/",
      "json": "https://tesign.com/en/item/sonora/index.json",
      "markdown": "https://tesign.com/en/item/sonora/index.md"
    }
  },
  "name": "Sonora",
  "use_label": "여러 음악 서비스를 한 앱에서",
  "one_liner": "Spotify·YouTube Music·Subsonic·로컬 파일을 한 네이티브 앱(Rust/GPUI)에서 재생하는 데스크톱 음악 클라이언트",
  "text": {
    "why": "Sonora는 Zed 편집기의 GPUI 렌더링 스택과 librespot 위에 만든 네이티브 앱으로, Spotify·YouTube Music·Subsonic/OpenSubsonic·로컬 파일을 한 창에서 재생한다. 갭리스 재생, 음량 정규화, 싱크 가사(노래방 모드·로마자 표기), 테마·폰트·아이콘·투명도 커스터마이즈, Discord Rich Presence를 제공한다. macOS brew cask, Arch AUR, Flatpak, Nix, Windows 설치기까지 배포 경로가 갖춰져 있고, 저장소는 sonorahq/sonora로 이전했다.",
    "take": "Electron 없는 네이티브 플레이어에 세 스트리밍 소스를 모은 점은 드물지만, Spotify 비공식 클라이언트라는 사실은 늘 함께 따라다닌다.",
    "build": [
      "Nix 플레이크의 programs.sonora 모듈로 provider와 테마를 선언해 여러 기기에 같은 설정을 배포할 수 있고, Navidrome 같은 자기 음악 서버를 붙여 스트리밍과 개인 라이브러리를 한 플레이어에서 쓰는 구성이 가능하다."
    ],
    "who": [
      {
        "role": "Spotify·YouTube Music을 함께 쓰는 사람",
        "situation": "한 앱, 한 재생 흐름"
      },
      {
        "role": "Navidrome·Subsonic 서버 운영자",
        "situation": "자기 라이브러리용 네이티브 데스크톱 플레이어"
      },
      {
        "role": "Rust GUI 개발자",
        "situation": "GPUI로 만든 실제 데스크톱 앱 사례"
      }
    ],
    "start": [
      {
        "command": false,
        "text": "brew install --cask nolight132/tap/sonora"
      },
      {
        "command": false,
        "text": "xattr -dr com.apple.quarantine /Applications/Sonora.app"
      },
      {
        "command": false,
        "text": "yay -S sonora-bin"
      },
      {
        "command": false,
        "text": "flatpak install --user https://sonorahq.github.io/sonora/sonora.flatpakref"
      },
      {
        "command": false,
        "text": "# Windows: Releases에서 Sonora-Setup.exe 다운로드 후 실행"
      }
    ],
    "caveat": [
      "GPL-3.0-or-later. macOS·Windows·Linux 지원(FreeBSD는 README 표현대로 \"아마도\").",
      "Spotify AB와 무관한 비공식 클라이언트이며 Spotify·YouTube Music 계정은 사용자가 따로 갖고 있어야 한다.",
      "릴리스가 아직 코드 서명되지 않아 macOS에서는 xattr로 격리 속성을 풀어야 하고, 번역은 README 표 기준 영어 100%, 다른 12개 언어 82–98%다."
    ]
  },
  "cta": {
    "type": "install",
    "label": "INSTALL",
    "url": "https://sonorahq.org/"
  },
  "ready": "install",
  "categories": [
    "media"
  ],
  "categories_confirmed": true,
  "tags": [
    "music-player",
    "spotify",
    "youtube-music",
    "subsonic",
    "rust",
    "gpui"
  ],
  "platform": [
    "macos",
    "windows",
    "linux"
  ],
  "license": {
    "spdx": "GPL-3.0",
    "scope": "copyleft",
    "scope_text": "사용·수정은 자유. 배포하면 소스 공개 의무(카피레프트).",
    "url": "https://spdx.org/licenses/GPL-3.0.html",
    "note": null,
    "open_source": true
  },
  "language": "Rust",
  "source_urls": {
    "canonical": "https://sonorahq.org/",
    "github": "https://github.com/nolight132/sonora",
    "huggingface": null,
    "app_store": null,
    "sightings": [
      {
        "source": "github",
        "url": "https://github.com/nolight132/sonora",
        "posted_at": "2026-09-03T23:00:00.000Z",
        "hn_url": null
      }
    ]
  },
  "numbers": {
    "as_of": "2026-09-16T21:00:00.000Z",
    "stars": 1192,
    "stars_unit": "GitHub stars",
    "stars_checked_at": "2026-09-15T19:34:56.036Z",
    "stars_observed_since_check": 0,
    "star_delta_24h": null,
    "star_delta_7d": null,
    "star_delta_30d": 123,
    "star_delta_unit": "GitHub stars gained in the window, GH Archive events summed to as_of",
    "spark_14d": [
      2,
      73,
      37,
      11,
      null,
      null,
      null,
      null,
      null,
      null,
      null,
      null,
      null,
      null
    ],
    "hf_likes": null,
    "hf_likes_observed_at": null,
    "hn_points": null,
    "hn_points_observed_at": null,
    "store": null,
    "method": "별 총합 = GitHub에서 마지막으로 확인한 값(stars_checked_at) + 그 뒤 GH Archive에서 관측한 증가. 24h·7d·30d 증가는 GH Archive 시간별 이벤트를 기준 시각(as_of)까지 합한 값. 우리 점수는 없습니다."
  },
  "ranks": null,
  "activity": {
    "pushed_at": "2026-09-15T18:06:07.000Z",
    "owner_type": "Organization",
    "open_issues": 95,
    "contributors": 42,
    "releases_count": 50,
    "latest_release": {
      "tag": "v0.36.0",
      "published_at": "2026-09-15T00:12:20.000Z",
      "prerelease": false
    },
    "checked_at": "2026-09-15T19:34:56.036Z",
    "core_checked_at": "2026-09-15T19:34:56.036Z"
  },
  "signals": [
    {
      "kind": "back",
      "label": "과거 기록",
      "value": null
    }
  ],
  "images": {
    "og": "https://tesign.com/img/sonora-20710e87e8.png",
    "cover": "https://tesign.com/img/sonora-20710e87e8.png",
    "cover_width": 1602,
    "cover_height": 992,
    "gallery": [
      "https://tesign.com/img/sonora-20710e87e8.png",
      "https://tesign.com/img/sonora-d53067f648.png",
      "https://tesign.com/img/sonora-fa354a3fe7.png",
      "https://tesign.com/img/sonora-eee55bb467.png"
    ],
    "alt": "Sonora 데스크톱 창 — 어댑티브 테마가 적용된 재생 화면과 라이브러리 뷰",
    "tier": 2
  },
  "dates": {
    "first_seen_at": "2026-09-13T09:37:58.336Z",
    "source_created_at": "2026-08-03T22:27:37.000Z",
    "discovery_hours": 971.1725933333333,
    "launch_signal_at": "2026-09-03T23:00:00.000Z",
    "kept_at": "2026-09-14T19:27:43.674Z",
    "first_published_at": "2026-09-14T19:27:43.752Z",
    "updated_at": "2026-09-15T04:36:57.012Z",
    "ingestion_mode": "backfill"
  },
  "notes": [
    "이 파일은 tesign.com 항목 페이지와 같은 빌드에서 같은 데이터로 만들어졌습니다. 소개 글은 편집자가 쓴 것이고, 숫자는 저장된 관측값입니다.",
    "JSON의 null은 관측하지 않았다는 뜻입니다 — 0이 아닙니다. 마크다운에서는 [확인 필요]로 적습니다.",
    "별 총합 = GitHub에서 마지막으로 확인한 값(stars_checked_at) + 그 뒤 GH Archive에서 관측한 증가. 24h·7d·30d 증가는 GH Archive 시간별 이벤트를 기준 시각(as_of)까지 합한 값. 우리 점수는 없습니다.",
    "과거 데이터를 되짚어 채운 항목입니다. 라이브 발견이 아닙니다.",
    "요약이며 법적 조언이 아닙니다."
  ]
}
