46 lines
2.8 KiB
Markdown
46 lines
2.8 KiB
Markdown
# Changelog
|
|
|
|
## v0.1.7 — 2026-06-06
|
|
|
|
- Added AirPlay button to the player: opens the system speaker picker (AirPlay devices and paired Bluetooth speakers on iOS). Shown only when wireless playback targets are available; highlights while wireless output is active. Safari uses the native WebKit AirPlay API, other browsers the Remote Playback API.
|
|
- `build-and-push.sh` synced from shared master (1.2.0 → 1.7.0).
|
|
- Added `.gitignore` (`.files/`) and committed `apple-touch-icon.png` for home-screen bookmarks.
|
|
|
|
## v0.1.6 — 2026-05-10
|
|
|
|
- Replaced `build-and-push.sh` with shared version from `shared-integrations/tooling/docker-build-and-push/`. Version is now read from this changelog instead of `version.txt`; commits and tags are made manually.
|
|
- Removed obsolete `version.txt`, `.last-branch`, and `.gitignore`.
|
|
- Stack: image tag now configurable via `SLEEP_MEDITATION_IMAGE_TAG` in `sleep-meditation.env`.
|
|
- Downloader: YouTube support via `yt-dlp` + `ffmpeg`. Best-quality audio is fetched and transcoded to mp3.
|
|
- Downloader: direct (non-YouTube) URLs now require an audio `Content-Type`; HTML and other unsupported responses are rejected with a clear error instead of saving a broken mp3.
|
|
- Downloader: title field is optional. For YouTube URLs the title is fetched automatically.
|
|
- Downloader: progress bar with percentage and phase (`Downloading` / `Converting`) during downloads.
|
|
- Downloader: each download now stores its source URL; the manage list shows a "Source" link for revisiting the origin.
|
|
|
|
## v0.1.5 — 2026-04-09
|
|
|
|
- Added skip-intro offset per downloaded track, configurable in the downloader UI.
|
|
- Skip offset stored in `downloads/skip.json`; player seeks to the offset on `loadedmetadata`.
|
|
|
|
## v0.1.4 — 2026-04-09
|
|
|
|
- Split download management into a separate internal container (`sleep-meditation-downloader`).
|
|
- Public `sleep-meditation` container is now read-only; all write endpoints live in the downloader.
|
|
- Both containers share the same host mp3 volume; downloader is bound to the local network only.
|
|
- Added refresh button (↺) in the app header for home-screen bookmark users.
|
|
- Fixed download list spacing.
|
|
|
|
## v0.1.3 — 2026-04-09
|
|
|
|
- Refinements to the download/settings flow introduced in v0.1.2.
|
|
|
|
## v0.1.2 — 2026-04-09
|
|
|
|
- Added server-side audio download via URL (avoids browser timeouts on long files).
|
|
- Downloaded tracks stored in `mp3/downloads/` and played individually on the main page.
|
|
- Display titles stored separately in `titles.json`; special characters preserved.
|
|
- Added Settings page (`#settings`) with download form, track rename, and manage downloads.
|
|
- Playlist track titles editable via Settings; updates written to `playlist.json`.
|
|
- Container extended with Python 3 + Flask API and supervisord alongside Nginx.
|
|
- Fixed mobile layout: switched `body` and `.card` from CSS Grid to Flexbox for correct iPhone rendering.
|