Files
lyssnarr/README.md
claude d8a5089eaf
All checks were successful
build-and-push / build (push) Successful in 17s
ntfy-notiser: skicka kort notis när något läggs till för nedladdning
Konfigureras på inställningssidan (server-URL, topic, på/av-toggle,
testknapp) med NTFY_URL/NTFY_TOPIC som env-fallback. Notisen är
fire-and-forget och kan aldrig fälla själva tillägget.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-01 18:33:37 +02:00

49 lines
1.7 KiB
Markdown

# lyssnarr
Self-hosted music discovery for the Pi5 — a Jellyseerr-style web UI that
finds new music for you. Search for artists/albums/tracks, get scheduled
AI-generated suggestions (Gemini) based on what you recently listened to
and what you add to your YouTube Music playlists, and add anything to
Lidarr with one click — or play it inline / open it in YouTube Music.
See [`doc/plan.md`](doc/plan.md) for the agreed plan and the
[Gitea wiki](https://gitea.brasse-pc.eu/brasse/lyssnarr/wiki) for
architecture notes.
## Prerequisites (dev box = Arch/Garuda)
```bash
sudo pacman -S nodejs npm # node >= 20
```
## Build & run
```bash
git clone gitea-claude:brasse/lyssnarr.git
cd lyssnarr
npm run setup # installs backend + frontend deps
npm run build # -> ./build/ (frontend dist + backend)
npm run dev # dev servers (Vite + Fastify, hot reload)
npm test
```
## Runtime configuration
All secrets live in the Dockge stack `.env` on the Pi5 — never in the
repo. Key variables (full list in `doc/plan.md`):
| Var | What |
|-----|------|
| `GEMINI_API_KEY` | Google AI Studio key for suggestion generation |
| `LIDARR_URL` / `LIDARR_API_KEY` | Lidarr instance to add music to |
| `SESSION_SECRET` | cookie signing |
| `APP_PASSWORD_HASH` | bcrypt hash for the single-user login |
| `NTFY_URL` / `NTFY_TOPIC` | defaults for the "tillagt för nedladdning" notiser — override + on/off toggle on the settings page |
## Deploy
CI (`.gitea/workflows/build.yaml`) builds the arm64 image on the Pi5
runner and pushes `localhost:5000/lyssnarr:latest`; the Dockge stack
`/srv/dockge-staks/lyssnarr/` runs it behind NPM as
`https://lyssnarr.brasse-pc.eu`.