Skip to content

About

YouTube Music desktop client built with Tauri v2 — native performance, minimal footprint

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

21 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

YT Music icon

YT Music

A native YouTube Music client for macOS.
Built with Tauri v2 + Rust. No Electron. No bloat.

Release License Build macOS 13+

YT Music screenshot


Why

YouTube Music deserves a proper desktop app — not a browser tab eating 300MB of RAM.

YT Music wraps the official web player in a native macOS window using the system WebKit engine (the same one Safari and Apple Music use). The result: ~30MB RAM, instant startup, and native OS integration.

Features

Feature Description
Native performance System WebKit — no bundled Chromium, no Electron overhead
Ad blocking Blocks ad requests at the network level + removes ad DOM elements
Now Playing Integrates with macOS media controls (Control Center, AirPods, Touch Bar)
Titlebar overlay Frameless window with native traffic lights — feels like a first-party app
Tiny footprint ~8MB app bundle, ~30MB RAM at runtime
Privacy No telemetry, no analytics, no tracking beyond what YouTube Music itself does

Performance

Metric YT Music (this) Electron-based alternatives
App bundle ~8 MB 150+ MB
RAM (idle) ~30 MB 200–400 MB
Startup < 1s 3–5s
CPU (idle) ~0% 1–3%

Install

Download

Grab the latest .dmg from Releases.

Build from source

Requires Rust and Bun.

git clone https://github.com/codeatlasdev/yt-music-client.git
cd yt-music-client
bun install
bun run build

The built app will be in src-tauri/target/release/bundle/.

Development

bun run dev

Architecture

┌─────────────────────────────────────────────┐
│  macOS Window (native, titlebar overlay)     │
├─────────────────────────────────────────────┤
│  WKWebView                                   │
│  ┌─────────────────────────────────────────┐ │
│  │  music.youtube.com                      │ │
│  │  + injected CSS (titlebar padding)      │ │
│  │  + injected JS (ad removal, media info) │ │
│  └─────────────────────────────────────────┘ │
├─────────────────────────────────────────────┤
│  Rust Backend (Tauri)                        │
│  ├── Ad blocking (URL interception)          │
│  ├── Media controls (souvlaki → Now Playing) │
│  └── User agent spoof (Chrome UA)            │
└─────────────────────────────────────────────┘

Tech Stack

  • Runtime: Tauri v2 — Rust backend + system WebView
  • Language: Rust (backend), JavaScript (injected scripts)
  • Media: souvlaki — cross-platform media controls
  • Build: Bun + Cargo
  • Target: macOS 13+ (Ventura and later)

Roadmap

  • Core playback (YouTube Music web)
  • Ad blocking (network + DOM)
  • macOS Now Playing integration
  • Native titlebar overlay
  • Keyboard media keys (play/pause/next/prev)
  • Picture-in-Picture mini player
  • Discord Rich Presence
  • Global search shortcut
  • Custom themes
  • Linux & Windows support

Contributing

PRs welcome. Keep it lean — this project values performance over features.

# Fork, clone, then:
bun install
bun run dev
# Make changes, test, submit PR

License

MIT


Made by codeatlas

About

YouTube Music desktop client built with Tauri v2 — native performance, minimal footprint

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages