FoxxMD
fc85790df5
fix: Normalize ISRC values #643
...
Spotify does not gaurantee non-hyphenated ISRC and musicbrainz won't search for hyphenated, so normalize before ISRC values downstream
2026-07-22 17:19:52 +00:00
FoxxMD
a30d1ae6a5
fix: Move project root dir constant location into backend-only scope
...
Publish Docker image to Dockerhub / test (push) Waiting to run
Publish Docker image to Dockerhub / Build OCI Images (push) Blocked by required conditions
Publish Docker image to Dockerhub / Build OCI Images-1 (push) Blocked by required conditions
Publish Docker image to Dockerhub / Merge OCI Images and Push (push) Blocked by required conditions
When in core its being pulled into vite bundler and causing build issues. It's only needed by backend anyways so move to backend-scope.
2026-07-22 15:40:44 +00:00
FoxxMD
5c586fb635
fix(storybook): Rename configure file causing ts to fail due to extension
2026-07-22 15:39:07 +00:00
FoxxMD
de0d336325
fix(rocksky): Remove undefined keys from payload before sending
2026-07-22 15:38:18 +00:00
Matt Foxx
65d0c7c16b
Merge pull request #641 from mattl/patch-1
...
Publish Docker image to Dockerhub / test (push) Waiting to run
Publish Docker image to Dockerhub / Build OCI Images (push) Blocked by required conditions
Publish Docker image to Dockerhub / Build OCI Images-1 (push) Blocked by required conditions
Publish Docker image to Dockerhub / Merge OCI Images and Push (push) Blocked by required conditions
Update librefm.mdx
2026-07-21 23:54:20 -04:00
Dr. Matt Lee
fc6cc68d59
Update librefm.mdx
2026-07-21 18:10:16 -04:00
Matt Foxx
8c83969e95
Merge pull request #638 from FoxxMD/dataDirStandardize
...
Publish Docker image to Dockerhub / test (push) Waiting to run
Publish Docker image to Dockerhub / Build OCI Images (push) Blocked by required conditions
Publish Docker image to Dockerhub / Build OCI Images-1 (push) Blocked by required conditions
Publish Docker image to Dockerhub / Merge OCI Images and Push (push) Blocked by required conditions
Separate and standardize config/data dirs
2026-07-21 12:53:19 -04:00
FoxxMD
7ac57ca757
feat(ui): Add theme switcher to header
...
Publish Docker image to Dockerhub / test (push) Has been cancelled
Publish Docker image to Dockerhub / Build OCI Images (push) Has been cancelled
Publish Docker image to Dockerhub / Build OCI Images-1 (push) Has been cancelled
Publish Docker image to Dockerhub / Merge OCI Images and Push (push) Has been cancelled
#500
2026-07-17 16:41:24 +00:00
FoxxMD
1dc8c21716
docs: Add preview UI callout to landing
2026-07-17 14:53:57 +00:00
FoxxMD
6f8e7d3862
docs: Update intallation instructions with config/data dir guidance
...
#616
2026-07-16 16:14:24 -04:00
FoxxMD
a6d33fc2ef
feat: Move config and data dir creation into app
...
* only use docker init for fixing permission
* don't rely on docker init for dir creation as other distros may need this functionality (nix)
* check for and create config/data dirs recursively on app start
#616
2026-07-16 16:14:24 -04:00
FoxxMD
26121ace10
feat: Separate config and data directories and use OS-standard paths, if present
...
* Break configDir into config and data directories so config and database/cache can be stored in different directories
* Use `env-paths` to fallback to OS-standard paths for config and data if CONFIG_DIR and DATA_DIR envs are not present
* Additionally fallback to process CWD/config if none of the above are present for some reason
#616
2026-07-16 16:14:24 -04:00
FoxxMD
27e5656a04
refactor: Replace projectDir with explicit path to project root, projectRootDir
2026-07-16 16:14:24 -04:00
Matt Foxx
f3d7d59af6
Merge pull request #636 from Exerra/feat/apple-music
...
Publish Docker image to Dockerhub / test (push) Has been cancelled
Publish Docker image to Dockerhub / Build OCI Images-1 (push) Has been cancelled
Publish Docker image to Dockerhub / Merge OCI Images and Push (push) Has been cancelled
Publish Docker image to Dockerhub / Build OCI Images (push) Has been cancelled
feat: Apple Music source
2026-07-16 15:45:04 -04:00
FoxxMD
2a4afefe64
feat(applemusic): Make album normalization user configurable and add guidance on usage
2026-07-16 16:41:36 +00:00
FoxxMD
1dba73ccb2
feat(client)!: Overhaul source scrobble filtering
...
* Use id OR name for matching client to scrobble to, during transition period
* Deprecate using name-only and warn when this is detected
* Consolidate logging filtered clients to one statement to reduce log noise
* Improve filter matching by making strings case and whitepsace insensitive
* On startup log `clients` options for sources
2026-07-16 15:51:54 +00:00
FoxxMD
3e82e035ac
feat: Update string normalization with granular options
2026-07-16 15:49:01 +00:00
Exerra
b12153fba9
docs(applemusic): improve formatting of developer tools shortcut
...
Updated the Apple Music configuration documentation to use <kbd> tags for keyboard shortcuts, improving readability.
2026-07-16 18:12:33 +03:00
Exerra
8c82412de4
docs: add detailed Apple Music authorization token extraction guide
...
Updated Apple Music configuration documentation with step-by-step instructions and screenshots for extracting authorization tokens in Chrome, Edge, Firefox, and Safari.
2026-07-16 17:15:58 +03:00
FoxxMD
e804ce33ef
fix(listenbrainz): Fix play fetch more indicator
...
Publish Docker image to Dockerhub / test (push) Waiting to run
Publish Docker image to Dockerhub / Build OCI Images (push) Blocked by required conditions
Publish Docker image to Dockerhub / Build OCI Images-1 (push) Blocked by required conditions
Publish Docker image to Dockerhub / Merge OCI Images and Push (push) Blocked by required conditions
latest_listen_ts is *always* the latest of *all-time*, not for the current min/max_ts range requested.
Instead, use count < than desired (and non-zero) to indicate more results
2026-07-15 20:49:37 +00:00
FoxxMD
3907fa5474
fix: Fix play fetch options logging data for pageless functions
2026-07-15 20:48:32 +00:00
FoxxMD
a7b3593314
stage import rule from eslint-plugin-import-x
2026-07-15 19:08:48 +00:00
FoxxMD
76ef994067
fix: Implement unicorn eslint rules and fix them
2026-07-15 18:31:13 +00:00
FoxxMD
c3cb3cf3a1
fix(client): Correct SOT scrobble api requests to not have the same from/to value
Publish Docker image to Dockerhub / test (push) Waiting to run
Publish Docker image to Dockerhub / Build OCI Images (push) Blocked by required conditions
Publish Docker image to Dockerhub / Build OCI Images-1 (push) Blocked by required conditions
Publish Docker image to Dockerhub / Merge OCI Images and Push (push) Blocked by required conditions
2026-07-15 17:34:37 +00:00
FoxxMD
8096219526
fix(client): Correct create/update timestamps for queues and scrobbles
...
* Ensure ingress queue always has an updated timestamp before dead creation
* Don't re-assign createdAt for scrobble after dead queue has already been updated
2026-07-15 17:02:29 +00:00
FoxxMD
67c1823195
feat(ui): Clean up scrobble timeline items
...
* Use timeline summary formatting to fix spacing
* Provide client name from fetched component data, if present, so scrobble summary is explicit where it sent/response scrobble from
2026-07-15 16:22:04 +00:00
FoxxMD
2014e78ade
fix(ui): Stabilize play timeline item order
2026-07-15 14:51:42 +00:00
Exerra
b3c332deeb
refactor: replace Apple Music headers config with origin field
...
Replaces the generic `headers` configuration field with a specific `origin` field for Apple Music. Updates the config schema, environment variable handling, documentation, and source implementation to simplify origin header management.
2026-07-15 17:12:21 +03:00
Exerra
93a1042e03
test(applemusic): add tests for stripping EP/Single album suffixes
...
Added test cases to ensure that ' - EP' and ' - Single' suffixes are correctly stripped from Apple Music album names during the formatting process.
2026-07-15 16:21:10 +03:00
Exerra
ba010240c0
feat(AppleMusicSource): include track URL in metadata
...
Added the web URL to the track metadata in AppleMusicSource to provide a direct link to the track.
2026-07-15 16:20:54 +03:00
FoxxMD
7f491d6974
fix: Fix hash router type
2026-07-15 13:08:04 +00:00
Exerra
74e67e0e41
feat(AppleMusicSource): include ISRC in track metadata
...
Added the isrc field to the track object in AppleMusicSource to improve track identification accuracy.
2026-07-15 15:59:49 +03:00
FoxxMD
1853f9abba
fix(musicbrainz): Catch scenario where all search prereqs fail
...
#636
2026-07-15 12:58:40 +00:00
Exerra
c13e7ebeec
feat(applemusic): strip ' - EP' and ' - Single' from album names
...
Implemented album name normalization in AppleMusicSource to ensure consistency with other sources by removing standard suffixes from EPs and singles. Updated documentation to reflect this behavior.
2026-07-15 15:38:14 +03:00
Exerra
207354e799
docs(docsite): fix heading hierarchy in applemusic.mdx
...
Adjusted markdown heading levels to ensure proper document structure.
2026-07-15 15:36:51 +03:00
FoxxMD
d7f6b17308
update boundary element linting to be more lenient
...
* allow core-tests from backend
* downgrade linting to warn
2026-07-15 12:23:53 +00:00
Exerra
c069020aac
docs(README.md): add Apple Music to supported sources list
...
Updated the README to include Apple Music in the list of supported scrobbling sources with a link to its documentation.
2026-07-15 13:52:53 +03:00
Exerra
f84a0f190d
test(applemusic): add integration tests for Apple Music module
...
Add new test suite for Apple Music backend logic
2026-07-15 13:39:27 +03:00
FoxxMD
d0f43fbd2d
feat(ui): Increase virtual play list height
Publish Docker image to Dockerhub / test (push) Waiting to run
Publish Docker image to Dockerhub / Build OCI Images (push) Blocked by required conditions
Publish Docker image to Dockerhub / Build OCI Images-1 (push) Blocked by required conditions
Publish Docker image to Dockerhub / Merge OCI Images and Push (push) Blocked by required conditions
2026-07-15 01:29:12 +00:00
FoxxMD
b38168975e
feat(ui): Compact filters
...
* move refresh/loading indicator into list type header
* Remove filter card title to trim filter real estate
2026-07-15 01:22:40 +00:00
Exerra
a845ac10ce
feat(applemusic): implement top-rebound recovery for duplicate plays
...
Added logic to detect and recover 'top-rebound' history patterns where Apple Music deduplicates re-listened tracks by bumping them to the top. This ensures intermediate tracks are captured and re-listened top tracks are processed correctly. Includes a new configuration option `recoverUnchangedTopHistory` to toggle this behavior.
2026-07-15 02:44:41 +03:00
Exerra
56fdb12683
feat(sources): update Apple Music configuration and environment variables
...
Refactored Apple Music source configuration to support token-based authentication via key files and custom headers. Renamed environment variable prefixes from 'AM' to 'APPLEMUSIC' for consistency.
2026-07-15 00:04:14 +03:00
Exerra
1f40e1e414
docs(applemusic): update configuration guide and add APPLEMUSIC_HEADERS
...
Added documentation for the APPLEMUSIC_HEADERS environment variable and updated code blocks with titles for better clarity in the Apple Music source configuration.
2026-07-15 00:03:06 +03:00
Exerra
c1a260dc56
fix(AppleMusicSource): add authentication verification to connection checks
...
Implemented status code validation for Apple Music authentication and connection checks. The module now throws errors instead of failing silently when the API is unreachable or auth is invalid.
2026-07-14 21:56:59 +03:00
Exerra
5d34ea68af
docs: update Apple Music configuration guide
...
Reorganized the Apple Music documentation to prioritize the Browser Token (Free) authentication method and clarify requirements for the paid MusicKit Key approach.
2026-07-14 21:27:23 +03:00
FoxxMD
41ea9e0aa7
feat(ui): Make timeline items more compact
...
Publish Docker image to Dockerhub / test (push) Waiting to run
Publish Docker image to Dockerhub / Build OCI Images (push) Blocked by required conditions
Publish Docker image to Dockerhub / Build OCI Images-1 (push) Blocked by required conditions
Publish Docker image to Dockerhub / Merge OCI Images and Push (push) Blocked by required conditions
#500
2026-07-14 15:23:37 +00:00
FoxxMD
a9d91c2c8a
fix circular buffer
2026-07-14 14:04:19 +00:00
FoxxMD
a696436a75
fix: Fix missing early return for skipped stage
2026-07-14 13:47:57 +00:00
Exerra
4ae388676e
chore(package-lock.json): update dependencies
...
Bump node-musickit-api to 3.1.0-next.5
2026-07-14 14:12:42 +03:00
Exerra
89b698d48d
docs: add Apple Music source documentation
...
Add Apple Music to the sources overview table and the main documentation index.
2026-07-14 14:06:20 +03:00