Kansu.io Project 01 — Eish!
Live / Self-hosted / No ads

EISH!

Your Spotify in a box.

A self-hosted music, podcast and audiobook platform that’s entirely yours. Request a track and watch it fetch, fingerprint-verify, tag and land in your library — then stream it anywhere, online or off. No subscriptions, no ads, no tracking.

Surfaces: installable PWA · iPhone · desktop · KansuPod hardware Stack: FastAPI · Navidrome · Docker
// hands on

Live demo

not a mockup — the actual app, served from the box
signs you into a shared demo account

This frame runs the real Eish PWA live — the same app the screenshots above were taken from, streamed straight off the self-hosted box.

  • Boot it and you’re signed straight into a shared demo account — no login needed.
  • Press play and it streams for real: sound, gapless playback, the lot.
  • Look, don’t break: the demo account is read-only — requesting new music and account changes are disabled.

Prefer a bigger screen? open the demo in its own window →

// how it works

Request → verify → stream

You ask for music. The box does the rest — and only keeps the take it’s sure about.

01

Request

Search an artist, album or track in the PWA and hit request.

02

Fetch

A worker finds the best source and pulls the audio down.

03

Verify

Every file is Shazam fingerprint-checked so you get the right song.

04

Tag

Art, album, artist and genre tagged from open metadata sources.

05

Stream

Served through Navidrome and cached on-device for offline play.

// built in

What’s in the box

Installable PWA

Installs to your phone or desktop like a native app, and keeps working offline.

Request pipeline

Search → fetch → fingerprint-verify → tag → auto-add to your library.

Podcasts

RSS feeds and ad-free YouTube pulls, with position tracking and offline downloads.

Audiobooks

Public-domain and DRM-freed AAX→M4B, chunk-cached so huge files never choke.

Offline caching

Save a track or a whole album to the device and play with no connection.

Gapless + EQ

Dual-element gapless playback and a three-band equalizer in the browser.

Cast & AirPlay

Throw playback to speakers and displays over AirPlay or Chromecast.

Multi-user

Accounts with per-user libraries and a shared discover view, JWT-secured.

// what’s next

Roadmap

In development
  • iOS background audio — bulletproofing playback when the app starts in the background.
  • Admin refinements — a cleaner request queue with bulk actions and import validation.
  • Per-user home — recently-played, new and random cards scoped to each account.