Summary
Add the ability to play local audio files through the player UI — no server needed, works entirely offline.
Motivation
The player already has solid audio controls, queue management, and PWA offline support. Local file playback would make it useful as a general-purpose music player even without a deployed catalog.
Proposed approach
- File picker (
<input type="file" accept="audio/*" multiple>) + drag & drop (desktop)
- Read ID3 tags client-side (e.g.
music-metadata-browser), fall back to filename
- Local tracks feed into the same
<audio> element and player controls
- Streaming catalog and local files coexist in the queue
Platform notes
- Desktop: Full support (file picker + drag & drop)
- iOS PWA: File picker only (no File System Access API, no drag & drop)
- Android PWA: Full support
Non-goals (for now)
- Directory scanning
- Persistent local library across sessions
- Write-back / file modification
Summary
Add the ability to play local audio files through the player UI — no server needed, works entirely offline.
Motivation
The player already has solid audio controls, queue management, and PWA offline support. Local file playback would make it useful as a general-purpose music player even without a deployed catalog.
Proposed approach
<input type="file" accept="audio/*" multiple>) + drag & drop (desktop)music-metadata-browser), fall back to filename<audio>element and player controlsPlatform notes
Non-goals (for now)