Now playing: Server 4.1.0 · App 0.7.0. Install ↓
Self-hosted music player · Linux server

Your music library,
on your hardware.

Kalinka plays MP3 and FLAC from storage your Linux server can reach — whether that is a local drive or a NAS elsewhere on your network. Browse the library from Android, Windows, Linux or any browser — without an account, a subscription or a cloud upload.

MP3 + FLAC Gapless playback Local-first
Kalinka desktop app showing the current album, playback controls and play queue.
Desktop app · now playing and queueActual Kalinka interface
Available now

Kalinka at a glance.

  • Gapless, bit-perfect playback

    Play MP3 and FLAC through your hi-fi, with gapless playback and bit-perfect output.

  • UPnP support

    Use Kalinka as a UPnP endpoint and play music through it with controllers such as BubbleUPnP.

  • Search by mood

    Describe a mood, genre or moment. Search runs locally over your collection, with optional Jamendo support.

  • Your library, your storage

    Play from local drives, a mounted NAS or Jamendo. Keep collections of tracks from different sources stored locally.

  • Remote control on your devices

    Browse and control playback from Linux, Windows, Android or any browser on your network.

  • Runs on your Linux hardware

    Install on Debian, Ubuntu or Raspberry Pi OS, or start with a ready-to-flash image.

The idea

What Kalinka is for

Your music, wherever you keep it. A small Linux box by the amp. A phone in hand. Kalinka brings them together without asking you to copy the collection into somebody else’s cloud.

It is an independent, free and local-first project for listeners who still keep their own records — and want modern search and remote control without giving up ownership.

Why Kalinka

Not another streaming service.

Kalinka is deliberately built around the collection you already have. These are the three decisions that shape the rest of the product.

01

The files stay yours

Point the server at local folders or mounted network shares. Kalinka builds its own searchable database without rewriting the source files. Your collection stays on storage you control.

02

The music plays where the hi-fi is

A renderer can run on the server itself, on a Raspberry Pi beside an amplifier, or in a browser. Choose an output from the app and move playback between renderers, even while a track is playing.

03

Search it the way you remember it

Ask for a mood, texture, genre or moment instead of remembering a filename. Mood search runs locally over the indexed collection and can include Jamendo when that optional source is enabled.

Search your music by mood

Find music for the moment.

Describe a mood, an instrument or an activity. Kalinka finds matching music in your collection, with the search running on your own server.

Play the suggestions straight away or add them to your queue. You don’t need a track title in mind to find something to listen to.

Try smart search with Jamendo now

Here, jazz for a cozy evening brings up You’ve Changed, She and All The Way from GrayMic’s Jazz Ballads in the local library.

01Describe what you want to hear
Kalinka Smart Search: typing ‘jazz for’ suggests ‘jazz for a cozy evening’.
02Play the matches from your library
Local recommendations: You’ve Changed, She and All The Way by GrayMic, with Play all and Enqueue controls.

Select a screenshot to enlarge.

A typical setup

Four pieces. One local network.

A Raspberry Pi can run the Kalinka server and renderer beside your amp. Mount your NAS for your own library and add a streaming source such as Jamendo. Control playback with the Kalinka app or a UPnP media controller such as BubbleUPnP.

Your local network · Ethernet / Wi-Fi
Internet

Streaming services

Jamendo via a source plugin

01 · Your library

NAS

Mounted music library

02 · Kalinka

SBC + renderer

Raspberry Pi running Linux

Kalinka serverRendererDAC
03 · Your hi-fi

Amplifier

Connected to your speakers

04 · Media controller

UPnP controller

BubbleUPnP on your phone

[optional]

Bedroom Kalinka

A Pi Zero 2 W and mini amp for your bedroom speakers.

Music flows from the NAS or a streaming service into Kalinka, then through the renderer and DAC to your amplifier. The UPnP controller sends track URLs and playback commands to Kalinka. The dashed branch could be your bedroom Kalinka, running on a Pi Zero 2 W with a mini amp. Select it in the app to listen in your bedroom.

Remote control:Android · Windows · Linux · any browser on the network

Current boundaries

  • Native Apple apps macOS and iPhone are not available yet
  • Audio formats MP3 and FLAC today
  • Initial setup Needs a Linux machine of its own
  • Large collections Full indexing can take several hours
Install Kalinka

Start with the Linux server.

Install the server on the machine connected to your hi-fi. Then use the app — or just a browser — to add your music locations, choose a renderer and start listening.

1

Set up the server

One command on an existing Debian, Ubuntu or Raspberry Pi OS machine. It installs the server, the audio renderer and the browser player, and starts them on boot — run it again later to update. Or skip the install and flash a ready-made Debian 13 image: power the machine on and it plays.

Install script
curl -fsSL https://kalinkaplayer.com/install.sh | sudo bash
2

Add a remote control

Install the app on as many devices as you like, or skip it entirely: any device on your network can open http://<server-ip>:8000. Both are remote controls — the sound comes out of the renderer you pick, normally the one wired to your hi-fi, or the browser itself when that suits you better.

Free & local-first · server on any Linux machine · remote apps for desktop, mobile & any browser · Install docs · App manual · Help test it