Arythm

Open-source web music player powered by YouTube Music.

Live Demo ↗View Source

Overview

Problem

Most web-based music players are either locked behind subscriptions, bloated with ads, or lack features like synced lyrics. Developers and music lovers need a clean, free alternative that runs entirely in the browser.

Solution

Built an open-source music player that streams from YouTube Music's catalog, displays time-synced lyrics, and provides a polished listening experience — all without requiring user accounts or subscriptions.

Tech Stack

TypeScriptReactYouTube Data APIVercel

Architecture

Arythm architecture diagram
High-level architecture of Arythm

Features

  • Stream millions of songs via YouTube Music integration
  • Time-synced lyrics display
  • Search and discover music by artist, album, or track
  • Queue management and playlist support
  • Responsive design for mobile and desktop
  • Keyboard shortcuts for playback control

Technical Decisions

1

TypeScript for strict type safety across the audio playback pipeline

2

YouTube Data API for access to a massive music catalog without hosting audio

3

Client-side audio state management for gapless playback experience

4

Vercel Edge for low-latency API proxy to handle CORS and rate limiting

Challenges

  • Handling YouTube API rate limits while maintaining responsive search
  • Synchronizing lyrics with audio playback across varying network conditions
  • Building a polished audio player UX that matches native app expectations

Outcomes

  • Fully open-source and free to use
  • No account or subscription required
  • Clean, ad-free listening experience

Gallery