# omniMux — web

SvelteKit 5 + TypeScript PWA frontend for omniMux. Talks to the FastAPI backend in ../api and to Navidrome’s Subsonic API for playback.

# Structure

src/
├── routes/       # pages (search, library, artist, album, playlists, browse)
├── components/   # Player, MiniPlayer, AlbumCard, TrackList, …
└── lib/          # subsonic.ts, api.ts, player store

# Developing

npm install
npm run dev -- --open

# Building

npm run build
npm run preview   # preview the production build

# Checks

npm run check   # svelte-check
npm run lint    # eslint
npm test        # vitest

See the root README for running the full stack via Docker Compose.

🔒 This site's search assistant runs a local AI model in your browser — no cloud AI, no tracking. See the ℹ️ in the chat panel for details.