Heartwood · music player for your own server

Your music.
Your radio.
Your whole desktop.

Heartwood plays the library on your own server, reaches YouTube Music for what you don't own yet, and learns from every thumb. Fold it into a widget and your wallpaper becomes the now playing wall.

  • Navidrome & Subsonic
  • Windows · Android
  • Gapless · offline · synced lyrics

pins

new

history

    artists

    albums

    start a station

    ideas

    no station yet

    Nothing playingPick something to play
    0:00
    0:00
    404Heartwood Phone ↓
    Tour

    This page is the desktop app at full size; on a phone it's shrunk to fit. Open it on a computer to feel it on your own desktop, or keep scrolling to see the phone app.

    02 · Away from the desk

    The same radio, in your pocket

    The Android app is built from the same core as the desktop one, so your library, stations and thumbs work the same way on both. This phone shares one player with the desktop above. Tap a line to see it, or use the phone yourself.

    5G ▮▮▮ 82%

    home

    jump back in

    your stations

    new on your server

    albums

    kept on this phone

    stations

    saved

    artists

    search

    now playing

    Not in your library: found on YouTube Music

    0:000:00
    more like this

    Tap plays it now. + adds it to the queue.

    Same player as the desktop above: whatever's playing there is playing here.

    03 · The radio

    A station that listens back

    Start a station from anything and Heartwood mixes your own library with songs you don't own yet, then keeps only a few songs ahead so every thumb changes what comes next. This is the real queue from the player above: steer it and watch.

    1. Pick a seedAn artist, an album, a song or a genre, or several at once on the phone.
    2. Gather candidatesYour library first, then songs Last.fm suggests that you don't own yet, found on YouTube Music. How much outside music to mix in is your setting, from none to mostly.
    3. Look a few songs aheadOnly a short stretch is planned, so the station can still turn.
    4. Thumbs steerUp pulls more like it into the next few slots. Down skips it and keeps it off the station.
    5. Save what's comingOn the phone, outside songs download ahead on Wi-Fi so they play instantly and offline. Mobile data is your call.
    6. GrowA liked outside song becomes a new seed, and enough thumbs down keep an artist off your radio.
    Nothing playing yetStart a station to watch it think

    Up next

    What it's doing

    Red tags are songs you don't own yet, found through Last.fm and played from YouTube Music.

    04 · Under the hood

    One core, two apps, your server

    Your music stays on your own server. Each app keeps a local mirror of the library so it opens instantly and works offline, and both apps compile the same Kotlin core, so a fix on one is a fix on the other. Pick a layer to see what it does.

      Gapless playback with ReplayGainCrossfade between songsSynced lyrics Colours from the coverMusic videos in step with the songOffline mirror & downloadsWindows media keys & taskbar buttons

      05 · Getting it

      What you need

      Heartwood is a player, not a store. Your music lives on a server you run, and the apps are how you listen to it everywhere.

      You bring

      A music server

      Navidrome, or any Subsonic-compatible server, at home or on a small VPS. Point Heartwood at it and sign in; your library mirrors down in the background.

      Works today

      Android

      • Library, stations, thumbs, search
      • Offline albums and device imports
      • Lock screen, Bluetooth and car controls
      Works today

      Windows

      • Quickplay, collection, now playing wall
      • Mini player, media keys, taskbar buttons
      • Gapless, crossfade, synced lyrics
      Planned

      macOS & Linux

      The desktop app is Windows only today. Mac and Linux builds are planned; the desktops above show how it would sit on yours.

      Early

      Sync

      A small service on your own server that shares thumbs and skips between your phone and your desktop. Stations and what's playing are next.

      Music on this page: The Last Halo plays from our own files. Every other song plays through YouTube's own player, and album covers come from the Cover Art Archive. Heartwood is a working name.