• Svelte 56.4%
  • TypeScript 39.6%
  • CSS 2%
  • Python 1.2%
  • JavaScript 0.3%
  • Other 0.5%
Find a file
2026-03-19 21:24:46 +00:00
.github ci: add action to automatically publish docker images to ghcr.io 2026-01-30 16:37:57 +01:00
src bump v 2026-03-19 21:24:46 +00:00
static lots of changes!!! 2025-11-09 10:19:53 +00:00
.dockerignore More QOLs 2025-10-04 17:55:29 +01:00
.env.example More QOLs 2025-10-04 23:21:05 +01:00
.gitignore spotify fixes 2025-11-29 13:31:47 +00:00
.npmrc Initial setup and AI slop (will fix) 2025-10-02 22:46:00 +01:00
.prettierignore Initial setup and AI slop (will fix) 2025-10-02 22:46:00 +01:00
.prettierrc Initial setup and AI slop (will fix) 2025-10-02 22:46:00 +01:00
CODE_OF_CONDUCT.md Create CODE_OF_CONDUCT.md 2025-10-16 22:03:40 +01:00
docker-compose.yml More QOLs 2025-10-04 17:55:29 +01:00
Dockerfile chore: fix docker builds 2026-01-30 16:21:55 +01:00
eslint.config.js Initial setup and AI slop (will fix) 2025-10-02 22:46:00 +01:00
generate_spotify_totp.py add python file 2025-11-29 13:34:32 +00:00
LICENSE Initial setup and AI slop (will fix) 2025-10-02 22:46:00 +01:00
package-lock.json add tidal workers 2026-03-19 21:24:16 +00:00
package.json push 2025-12-06 17:31:49 +00:00
README.md full stop? 2026-03-06 20:10:50 +00:00
svelte.config.js IT WORKS!!!!!!! 2025-10-05 22:46:48 +01:00
tsconfig.json Initial setup and AI slop (will fix) 2025-10-02 22:46:00 +01:00
vite.config.ts Fix issues, test 2025-10-05 10:40:21 +01:00
wrangler.jsonc Update wrangler config name to tidal-ui 2025-10-10 19:42:54 +00:00

lossless-ui

High-fidelity music streaming UI built with SvelteKit and Tailwind.

Important

I am beginning to retire tidal-ui in favour of newer projects such as Monochrome - and will have the repo archived by the end of this month. music.binimum.org will begin to redirect to tidal.squid.wtf over the course of February 2026. Thanks to everybody who used the website for showing so much support - it really means a lot. For clarification - the API will still be maintained into the forseeable future.

Important

Your reminder that music piracy is illegal in most countries and this tool is for use by people with an active Tidal account for educational purposes.

See a list of instances of APIs and frontends here.

API + API docs are here

Features

  • It works (kinda)
  • Downloads in FLAC up to 24-bit/192kHz

Run with Docker

Quick start with Docker Compose

  1. Create a .env file by copying .env.example. Redis is deprecated (don't use it).

  2. Build and run the production container:

    docker compose up --build
    
  3. Visit http://localhost:5000 once the container finishes booting.

docker compose automatically passes through the optional Redis environment variables and sets PORT=5000 so the SvelteKit server binds correctly. Stop the stack with docker compose down when you are done.

Pass any optional configuration (for example TITLE) with additional -e flags.

Development Notes

  • Redis for this project has been deprecated. Don't use it.
  • Some requests are proxied through the first-party SvelteKit route at /api/proxy so the browser can call the API without CORS errors.
  • Cached responses are stored only for safe GET requests without Authorization, Cookie, or Range headers. Responses larger than REDIS_CACHE_MAX_BODY_BYTES, non-text/JSON payloads, 4xx/5xx statuses, and responses with Cache-Control: no-store|private are never cached.
  • Install dependencies with npm install after updating package.json.

I want free BrowserStack

This project is tested with BrowserStack. This project is tested with BrowserStack

Todo