Live · Public beta available

BlissBox

Privacy-focused free music streaming app powered by a custom reverse-engineered YouTube Music engine, with Sign in with Google, offline playback, and background mode

Role
Lead Developer & Architect
Timeline
2024–2025 · Personal Project
Platforms
Android

BlissBox is a reverse-engineered YouTube Music client built entirely from scratch in Flutter. Rather than relying on any official SDK, I reverse-engineered the YouTube Music InnerTube API — including its PoToken authentication, signature-timestamp extraction, and stream decryption — to deliver a pixel-perfect streaming experience completely free of ads.

The project is built as a modular Dart mono-repo with 18+ packages covering everything from a custom HLS/DASH parser and media player to a JavaScript runner for cryptographic operations that YouTube uses client-side. Users can sign in with their Google account to sync playlists and library, listen offline with downloaded tracks, and switch seamlessly between audio and video modes — all while keeping their data private.

Modular Mono-Repo

18+ self-contained Dart packages covering the YouTube API engine, media playback stack, UI system, and localizations — wired together via dependency injection.

BlissBox App

Flutter · Android

The main consumer app implementing home, explore, search, library, player, download manager, and YouTube sign-in flows. Built with Clean Architecture and BLoC state management.

Flutter Flutter Dart Dart BLoC

YouTube Music Engine

Dart package · youtube_music

Custom reverse-engineered InnerTube client handling authentication, PoToken extraction, stream manifest resolution, search, browse, and playlist operations — all without any official SDK.

Dart Dart Dio WebView

Media Player Stack

Dart packages · media_player · hls · dash

A custom platform-channel media player with a hand-rolled HLS and CMAF/DASH parser, lazy source loading, offline downloader, and audio-service integration for lock-screen controls.

Kotlin Kotlin Java Java Dart Dart

Features

Home Feed

Home Feed

Personalised home screen with curated shelves, quick picks, mixes, and new releases pulled live from the YouTube Music InnerTube browse endpoint.

Audio Player

Audio Player

Rich audio playback with dynamic album art, synced full-screen lyrics, queue management, shuffle, and repeat modes.

Video Player

Video Player

Full-screen video mode that shares the same playback session as the audio player — switch modes instantly without buffering.

Audio-of-Video

Audio-of-Video

Play only the audio track extracted from any music video, letting you listen to video-only releases as pure audio.

Lyrics

Lyrics

Synchronized, full-screen lyrics displayed in real time while your music plays, pulled from YouTube Music's lyric data.

Search & Discovery

Search & Discovery

Instant search with smart suggestions across songs, albums, artists, and playlists, with a history view for quick re-access.

Explore & Moods

Explore & Moods

Discover new music through curated mood playlists, genre charts, and region-specific trending shelves.

Trending Charts

Trending Charts

Region-specific top charts and trending music updated in real time, letting you always stay current with popular releases.

Artist Pages

Artist Pages

Full artist profiles showing top songs, albums, singles, and subscriber counts, mirroring the official YouTube Music experience.

Playlists

Playlists

Create and manage custom playlists with shuffle, queue reordering, and quick-add actions — synced with your Google account when signed in.

Library

Library

Your personal library — saved songs, downloaded tracks, and followed playlists — all organised in one place and available offline.

Reverse-Engineered Playback

Rather than wrapping an existing SDK, I reverse-engineered the entire YouTube Music streaming pipeline so BlissBox can deliver ad-free, lossless-quality playback without any official API key.

01

PoToken & Signature Extraction

A JavaScript runner (backed by a WebView) executes YouTube's own client-side JS to obtain short-lived PoTokens and signature timestamps required for authenticated stream requests.

02

InnerTube API Engine

A fully custom Dart client speaks YouTube's private InnerTube protocol — handling browse, search, player, and next requests with cookie-based session management.

03

HLS / DASH Stream Decoding

Hand-rolled HLS and CMAF/DASH parsers resolve multi-quality audio and video streams, feeding a native Android ExoPlayer integration via a custom platform channel.

BlissBox audio player showing album art and playback controls
BlissBox full-screen video player mode

Tech Stack

App

Flutter Flutter Dart Dart BLoC

Native Layer

Kotlin Kotlin Java Java

Data & Storage

Drift / SQLite Dio

Tooling

Melos GetIt / Injectable Figma Figma

What I owned

  • Reverse-engineered the YouTube Music InnerTube API, replicating PoToken extraction, signature-timestamp decryption, and cookie-based session authentication in pure Dart.
  • Designed and built a modular mono-repo architecture with 18+ Dart packages managed via Melos, keeping each concern (YouTube engine, media player, UI system) independently versioned.
  • Implemented a custom HLS and CMAF/DASH parser from scratch, enabling adaptive-quality stream resolution without any third-party media library.
  • Developed a native Android media player plugin in Kotlin/Java via Flutter platform channels, integrated with Android's audio_service for lock-screen and notification controls.
  • Built a JavaScript runner abstraction (WebView, FlutterJS, and process backends) to execute YouTube's obfuscated client-side JS for cryptographic token generation.
  • Designed the complete app UI from scratch — home, explore, search, player, library, and artist pages — faithfully mirroring the YouTube Music aesthetic with a privacy-first twist.
  • Integrated Sign in with Google via WebView cookie capture and cookie-jar session management, enabling library sync and personalised recommendations.
  • Implemented an offline download manager with background download queuing, progress tracking, and local playback of downloaded tracks.