binimum
33d3c6c51a
fix(lyrics): update track title retrieval to use getTrackTitle function
...
chore(deps): update @uimaxbai/am-lyrics to version 1.1.4 in package.json and package-lock.json
2026-03-13 19:57:24 +00:00
Mrigakshi Roy Choudhury
3880bc2740
fix(library): show playlist in library on csv import
2026-03-14 00:25:21 +05:30
Samidy
43a5f1b714
fix(local files): metadata artist garbage
2026-03-13 05:28:49 +03:00
Samidy
3591ed7157
fix(album-imports): get them to actually work
2026-03-13 04:51:04 +03:00
Samidy
f513ce27e4
feat(unreleased): lyrics on unreleased
2026-03-13 02:58:57 +03:00
Daniel
a36ae22f4f
feat: add blob-url support and integrate blob asset plugin for Vite
2026-03-12 22:34:37 +00:00
Daniel
bc1c97dc1f
Revert "fix: update ffmpeg imports to use URL loader for core JS and WASM"
...
This reverts commit 14817a3314 .
2026-03-12 21:01:32 +00:00
Daniel
a4d92b0759
feat(downloads): implement SequentialFileWriter for individual file downloads
2026-03-12 20:47:48 +00:00
Daniel
25c338fac3
refactor: improve progress updates
2026-03-12 20:47:47 +00:00
Daniel
574e42ba1e
feat(downloads): dash progress / remove nearly duplicate downloadTrackBlob logic from downloads.js
2026-03-12 20:47:46 +00:00
Daniel
4445cdcd2e
fix(taglib): worker initialization
...
This was mangled during a merge operation.
2026-03-12 20:47:45 +00:00
edideaur
b31be7dc80
Fix bulk download edge cases and improve robustness
...
- FolderPickerWriter: throw AbortError on cancel instead of returning null
- FolderPickerWriter: add try/catch with abort() to release file locks on failure
- ZipNeutralinoWriter: move writeBinaryFile after response.body validation
- bulkDownloadSettings: migrate legacy key and validate stored values
- download-utils: catch ffmpeg cancellation via signal.aborted
- downloads.js: use consistent Neutralino detection with bridge module
- download-utils: use strict equality for flac extension check
2026-03-12 19:35:23 +00:00
edideaur
a776e24aee
Merge pull request #303 from DanTheMan827/copilot/extract-duplicated-code-to-ts
...
Extract shared download utilities and abstract bulk download handlers + new folder picker support
2026-03-12 21:18:47 +02:00
Daniel
37a74ad755
refactor(downloads/ffmpeg): refactor ffmpeg usage and add additional logging for ffmpeg
2026-03-12 16:02:44 +00:00
Daniel
c865b21bf5
refactor: ffmpeg customFormats/containerFormats are now an object
2026-03-12 15:24:54 +00:00
Daniel
14817a3314
fix: update ffmpeg imports to use URL loader for core JS and WASM
2026-03-12 14:57:57 +00:00
Daniel
9226515bcf
feat: update client-zip to version 2.5.0 and adjust import in bulk-download-writer.ts
2026-03-12 14:46:52 +00:00
Samidy
3fc74738a5
this barely ever worked anyways lets just remove smooth scrolling
2026-03-12 10:16:38 +03:00
Daniel
079198c59e
fix: improve discNumber formatting in formatTemplate function
2026-03-12 06:48:34 +00:00
Daniel
b04019f282
fix(downloads): mp4 files with flac audio are now tagged
...
This is resolved by using ffmpeg to copy the audio data into a new mp4 container file before passing it to taglib.
2026-03-12 06:43:45 +00:00
Daniel
c1552980eb
feat: extract bulk download handlers into bulk-download-writer.ts and add folder picker + settings
2026-03-12 06:04:59 +00:00
copilot-swe-agent[bot]
c9a1f49f23
feat: extract duplicated download utilities from api.js and downloads.js into download-utils.ts
...
Co-authored-by: DanTheMan827 <790119+DanTheMan827@users.noreply.github.com>
2026-03-12 06:04:59 +00:00
Samidy
51b88cc5e8
cdn to package for am-lyrics
2026-03-12 09:00:27 +03:00
Samidy
86df459dc1
chore(logs): remove accidental debug log for fetching tracks from artists (HOW DID I FORGET TO DO THIS FOR MONTHS LMFAOOO)
2026-03-12 07:53:51 +03:00
SamidyFR
7e6375919d
style: auto-fix linting issues
2026-03-12 04:12:28 +00:00
Samidy
30b2e7d445
fix(downloading): hi-res M4A's having no embedded covers (FUCK YOU TAGLIB)
2026-03-12 07:12:02 +03:00
Samidy
0ed82f586c
didnt get it all lol
2026-03-12 05:59:20 +03:00
Samidy
34c3f8dbcf
Apply suggestion from @coderabbitai[bot]
...
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
2026-03-12 05:04:42 +03:00
Samidy
3814358f0d
Merge branch 'main' into copilot/fix-m3u-generation-logic
2026-03-12 05:01:20 +03:00
Samidy
5b4bff97e0
Merge branch 'main' into copilot/add-custom-download-formats
2026-03-12 04:56:28 +03:00
Samidy
8b09635272
Merge pull request #297 from DanTheMan827/copilot/fix-invalid-total-tracks
...
Fix per-disc track total and add total disc count to embedded metadata
2026-03-12 04:55:26 +03:00
Samidy
4728455b90
Merge branch 'main' of github.com:monochrome-music/monochrome
2026-03-12 02:49:00 +03:00
Samidy
5e55e141da
feat(missing-songs-import): export missing songs to CSV or copy to clipboard
2026-03-12 02:48:55 +03:00
SamidyFR
6efd88b31e
style: auto-fix linting issues
2026-03-11 23:04:04 +00:00
Samidy
f576b35ce8
Merge branch 'main' of github.com:monochrome-music/monochrome
2026-03-12 02:03:40 +03:00
Samidy
4b7833dc8e
update outdated self-hosting shit
2026-03-12 02:03:36 +03:00
Daniel
4def7b8e51
Merge branch 'combined-fixes' into copilot/fix-m3u-generation-logic
2026-03-11 15:20:30 -05:00
Daniel
7448ddce1e
feat(downloads): add FLAC - Max Compression option and refactor transcoding logic
2026-03-11 15:18:39 -05:00
Daniel
2db782d74f
feat(downloads): add custom download formats
2026-03-11 15:18:39 -05:00
Daniel
e1d7744ab2
fix: correct total tracks per disc and add total discs to metadata for multi-disc albums
2026-03-11 15:17:17 -05:00
Daniel
aa728f970b
feat(downloads): add discNumber template for file name.
...
Also update disc number handling in download logic and metadata extraction
2026-03-11 20:10:38 +00:00
Daniel
8cf7979d47
fix(downloads): cue generation now properly outputs correct tracks numbers and splits by disc
2026-03-11 20:00:44 +00:00
Daniel
33668ae118
fix: correct total tracks per disc and add total discs to metadata for multi-disc albums
2026-03-11 19:26:30 +00:00
Daniel
3e24470401
feat(downloads): add FLAC - Max Compression option and refactor transcoding logic
2026-03-11 19:26:05 +00:00
Daniel
3f2651633b
feat(downloads): add custom download formats
2026-03-11 19:26:05 +00:00
edideaur
84df59624e
style: auto-fix linting issues
2026-03-11 12:43:15 +00:00
edideaur
d8fdaac508
Merge pull request #300 from KalerKaler/fix/fixed-lcd-pixels-visualizer-and-visualizer-switching
...
fix(visualizer): correct LED layout and visualizer switching
2026-03-11 14:42:48 +02:00
Kaler
bb44b7559d
fix(visualizer): correct LED layout and switching logic
2026-03-11 12:51:44 +05:30
SamidyFR
108387ac7a
style: auto-fix linting issues
2026-03-11 07:12:10 +00:00
Samidy
ffdcc1d396
THERE YOU SHITHEAD
2026-03-11 10:11:38 +03:00
SamidyFR
a35b51f8cd
style: auto-fix linting issues
2026-03-11 06:28:37 +00:00
Samidy
6fd334f74d
PLEASE JUST FUCKING WORK WHAT
2026-03-11 09:28:03 +03:00
SamidyFR
3c51d45d74
style: auto-fix linting issues
2026-03-11 06:14:00 +00:00
Samidy
c4af3ea204
Merge branch 'main' of github.com:monochrome-music/monochrome
2026-03-11 09:13:33 +03:00
Samidy
17964a8bc9
fix media playback errors in firefox
2026-03-11 09:13:28 +03:00
Samidy
07003f92f0
fix toggle UI console errors + volume button disappearing for no reason
2026-03-11 08:36:11 +03:00
SamidyFR
12baaaa55f
style: auto-fix linting issues
2026-03-11 05:23:57 +00:00
Samidy
d167a9c869
Merge branch 'main' of github.com:monochrome-music/monochrome
2026-03-11 08:23:30 +03:00
Samidy
71a2c5be93
make le diddy infinite radio better kinda
2026-03-11 08:23:27 +03:00
Daniel
3ef50cb6ce
fix(downloads): fix m3u generation artist [object Object] bug and mismatched file extensions
2026-03-11 04:50:53 +00:00
SamidyFR
0641e3da33
style: auto-fix linting issues
2026-03-11 04:03:24 +00:00
Samidy
b75245648d
fix(playlists): queue loading in chunks for large playlists
2026-03-11 07:02:56 +03:00
Samidy
57a72ac5d7
fix: show warning for empty playlist names & fix notification z-index
2026-03-11 05:30:32 +03:00
Samidy
e290410aee
fix(recommendations): add retry logic for renderHomeAlbums so they load all the time
2026-03-11 04:45:53 +03:00
Samidy
5794a12128
fix(profiles): let the first profile not get shot out in broad daylight
2026-03-11 03:41:16 +03:00
Samidy
f20935d2d2
Merge pull request #274 from DanTheMan827/taglib-wasm
...
Use taglib-wasm for writing and improve ffmpeg caching
2026-03-11 01:23:40 +03:00
edideaur
2e1367e5c2
video covers
2026-03-10 21:58:02 +00:00
Daniel
b596cbe8d9
refactor(flac): replace magic numbers with FLAC_BLOCK_TYPES constants for better readability, and pad comment block to at least 1024 bytes
2026-03-10 19:22:03 +00:00
Daniel
1c9c5fa242
Merge https://github.com/monochrome-music/monochrome into taglib-wasm
2026-03-10 18:48:18 +00:00
Kaler
97e41b521b
Fixed lcd-visualiser CSS
2026-03-10 13:28:16 +05:30
SamidyFR
71b65e70a8
style: auto-fix linting issues
2026-03-10 07:45:19 +00:00
Samidy
92f8d4ef61
Merge branch 'main' of github.com:monochrome-music/monochrome
2026-03-10 10:44:55 +03:00
Samidy
a4b84ec0b3
disable desktop app downloads page while we fix the desktop app
2026-03-10 10:44:52 +03:00
SamidyFR
dd2639b5f0
style: auto-fix linting issues
2026-03-10 07:31:34 +00:00
Samidy
ad615f52f8
fix(covers): embed album art for single track downloads
2026-03-10 10:31:04 +03:00
SamidyFR
04f04ca03a
style: auto-fix linting issues
2026-03-10 05:53:37 +00:00
Samidy
4ce3bb42e0
i got bored idk
2026-03-10 08:53:09 +03:00
SamidyFR
ce79d6d4c6
style: auto-fix linting issues
2026-03-10 02:43:19 +00:00
Samidy
49592e38a3
Merge branch 'main' of github.com:monochrome-music/monochrome
2026-03-10 05:42:50 +03:00
Samidy
f67123a9d1
fix(inf-radio): IM A DUMBASS
2026-03-10 05:37:51 +03:00
SamidyFR
4cb8b84f91
style: auto-fix linting issues
2026-03-10 01:58:49 +00:00
Samidy
ce4979bdb2
Merge branch 'main' of github.com:monochrome-music/monochrome
2026-03-10 04:58:21 +03:00
Samidy
473e5ba8b6
feat(recommendations): Infinite Radio
2026-03-10 04:58:17 +03:00
Daniel
56038a97ff
fix(workers): utilize vite ?worker imports.
2026-03-09 17:58:10 +00:00
Daniel
65e1b4e98d
fix(metadata): remove unnecessary audio buffer type check in addMetadataToAudio
2026-03-09 15:58:53 +00:00
Daniel
37f70f5390
Temporarily force FLAC files to go through ffmpeg
...
Something is wrong with the structure of the downloaded files and taglib is NOT happy with them
2026-03-09 15:56:42 +00:00
Daniel
42101353ab
feat(metadata): re-add flac and m4a metadata code as separate files
2026-03-09 15:54:28 +00:00
Daniel
de472c5891
Merge remote-tracking branch 'upstream' into taglib-wasm
2026-03-09 02:43:12 +00:00
SamidyFR
11a828668c
style: auto-fix linting issues
2026-03-09 01:47:31 +00:00
Samidy
34ba920662
fix(anim-covers): not loading 99% of the time (i havent even properly tested this im js hoping it works)
2026-03-09 04:47:03 +03:00
Samidy
fe95cb23cd
fix(DB): why did i make it overwrite
2026-03-09 04:23:08 +03:00
Daniel
efa3521aff
feat(taglib): refactor and improve metadata handling, worker integration, and code quality
...
- Refactor metadata handling to use fetchTagLib and addMetadataWithTagLib for improved loading and worker-based processing
- Update prefetchMetadataObjects and addMetadataToAudio for simplified and more robust metadata extraction
- Add taglib.worker.ts for audio metadata processing in a worker
- Implement getMetadataWithTagLib function
- Auto-fix linting issues and remove unnecessary debugger statements
2026-03-09 00:35:20 +00:00
Daniel
497d42b9fd
feat(ffmpeg): enhance progress tracking and logging
...
- Improved progress tracking in FFmpeg worker by extracting total duration and current time from logs.
- Updated downloadTrackBlob function to use console logging for progress updates.
- Enhanced error handling and progress reporting during audio encoding.
2026-03-09 00:35:09 +00:00
SamidyFR
c8b919a4c7
style: auto-fix linting issues
2026-03-09 00:04:26 +00:00
Samidy
83c705a60a
Merge branch 'main' of github.com:monochrome-music/monochrome
2026-03-09 03:03:59 +03:00
Samidy
75d16e6ce4
feat: music videos
2026-03-09 03:03:29 +03:00
Julien Maille
4d938b5478
UI: show FFmpeg encoding progress in toaster
2026-03-08 20:59:35 +01:00
Julien Maille
7dd8854ad1
UI: move lyrics panel close button to the right side
2026-03-08 20:38:05 +01:00
Julien Maille
ec06fed5cf
fix: restore Kawarp visualizer selection and fix settings visibility
2026-03-08 20:33:08 +01:00
Julien Maille
9fe689db53
fix: handle JSON response in image upload
2026-03-08 20:01:38 +01:00
Julien Maille
c7b1d301db
fix: linting errors and settings structure cleanup
2026-03-08 19:42:26 +01:00
Julien Maille
473d63c899
reorganize settings menu, add playback speed reset and instances tab
2026-03-08 18:35:07 +01:00
Samidy
e3f781d588
feat(covers): animated covers
2026-03-08 05:27:20 +03:00
willianpm
7cf0b3d386
fix(ui): prevent duplicate wheel listeners and correct mute handling
...
- Remove stacked wheel event listeners on fullscreen reopen to avoid multiple handler executions.
- Replace non-existent Player mute methods with audioPlayer.muted property and localStorage update.
- Ensures volume wheel and mute logic work correctly after multiple fullscreen toggles.
2026-03-08 02:15:17 +00:00
Daniel
ff1efe093e
feat(ffmpeg, taglib, utils): replace toBlobURL with fetchBlobURL for improved loading
2026-03-08 01:55:42 +00:00
Daniel
0f20106076
feat(downloads): prefetch data while downloading to improve performance and update taglib-wasm
2026-03-08 01:55:42 +00:00
Daniel
44a7c3b61c
fix(downloads): cache ffmpeg core js and wasm
...
This creates a blob url outside of the worker for for the core .js and .wasm files so they aren't downloaded on each run.
2026-03-08 01:54:29 +00:00
Daniel
50a5b79d70
feat(downloads): use taglib-wasm to set tags
...
taglib supports multiple media formats beyond what was previously supported, this would enable transcoding to other formats without needing to write additional metadata libraries.
2026-03-08 01:54:29 +00:00
willianpm
277d8e801b
feat: add mouse wheel support for fullscreen volume control
...
Added event handler to allow adjusting the fullscreen volume using the mouse wheel. Scrolling up unmutes and increases volume, scrolling down decreases volume. Improves user experience for volume adjustments in fullscreen mode.
2026-03-08 01:03:52 +00:00
Samidy
4762dea607
feat(visualizer): visualizer dimming
2026-03-08 02:55:51 +03:00
Samidy
3685e33b48
fix(context menu): Change from "Like" to "Unlike" depending on state
2026-03-08 01:15:51 +03:00
SamidyFR
c7a4ba194d
style: auto-fix linting issues
2026-03-07 21:04:44 +00:00
Samidy
6dbd07ed88
Merge branch 'main' of github.com:monochrome-music/monochrome
2026-03-08 00:04:18 +03:00
Samidy
ed566c94cc
fix(profiles): remove double JSON.stringify on privacy field
2026-03-08 00:04:14 +03:00
edideaur
0b17fb1b4b
higher image qualities for unreleased + fallbacks
2026-03-07 10:12:59 +00:00
SamidyFR
d4733020b6
style: auto-fix linting issues
2026-03-07 05:26:40 +00:00
Samidy
911a2016d0
test
2026-03-07 08:26:13 +03:00
SamidyFR
346e4b2861
style: auto-fix linting issues
2026-03-07 05:03:21 +00:00
Samidy
38dd6f8220
Merge branch 'main' of github.com:monochrome-music/monochrome
2026-03-07 08:02:56 +03:00
Samidy
c074b48b0a
shitty prob not working implementation for auto-updates in the desktop app
2026-03-07 08:02:52 +03:00
SamidyFR
1da88ac568
style: auto-fix linting issues
2026-03-07 02:50:41 +00:00
Samidy
db1d607603
Merge branch 'main' of github.com:monochrome-music/monochrome
2026-03-07 05:50:19 +03:00
Samidy
0b2fe88731
feat(keyboard): command palette
2026-03-07 05:50:15 +03:00
SamidyFR
6865e45ff7
style: auto-fix linting issues
2026-03-06 23:57:54 +00:00
Samidy
135e5fd0af
lets try that again
2026-03-07 02:57:28 +03:00
SamidyFR
67eb5075d4
style: auto-fix linting issues
2026-03-06 23:42:53 +00:00
Samidy
e15ca352a0
fix(auth): ATTEMPTED fix for google oauth (lowk havent tested this)
2026-03-07 02:42:30 +03:00
SamidyFR
60d61f74d2
style: auto-fix linting issues
2026-03-06 21:01:28 +00:00
Samidy
cddf318d19
Merge pull request #279 from TimurCravtov/feat/local-files-duration
...
Feat/local files duration
2026-03-07 00:01:02 +03:00
edideaur
0de436a693
fix dockerfile and album cover clicks
2026-03-06 20:53:35 +00:00
Timur Cravtov
4e174297ca
fix: move mvhd tag to run before udta guard
2026-03-06 22:40:05 +02:00
Timur Cravtov
6545b31388
feat(library): estimate flac and mp4 duration
2026-03-06 22:19:58 +02:00
Timur Cravtov
8c7a7547c9
feat(library): estimate mp3 files duration
2026-03-06 22:19:40 +02:00
edideaur
b88e55efb3
fix copilot findings in kawarp.js and themeStore.js cause they were bugging me
2026-03-06 09:45:05 +00:00
edideaur
f6bc60bd5e
style: auto-fix linting issues
2026-03-06 08:57:13 +00:00
edideaur
c986921505
bun install in dockerfile and reload page when visualizer switching to avoid issues
2026-03-06 08:56:36 +00:00
edideaur
828e192362
fix visualizers
2026-03-06 08:43:53 +00:00
edideaur
55854020b6
Merge pull request #275 from boidushya/main
...
feat: add kawarp as visualizer
2026-03-06 09:58:46 +02:00
Samidy
3772295a07
feat(home): explore page
2026-03-06 08:58:24 +03:00
Samidy
73878b421d
fix(community themes): fix not being able to upload community themes
2026-03-06 03:30:50 +03:00
Samidy
e013ad0de5
Merge branch 'main' of github.com:monochrome-music/monochrome
2026-03-06 02:14:47 +03:00
Samidy
ad7d088e5c
refactor(auth): migrate authentication from Firebase to (self-hosted) Appwrite
2026-03-06 02:14:43 +03:00
Boidushya
a2b8ce3cdf
feat: add kawarp as visualizer
2026-03-06 04:25:56 +05:30
edideaur
14cf949381
fix ddosing lmao
2026-03-05 18:22:54 +00:00
edideaur
8eefb1b79b
open in harmony + context menu on album pages
2026-03-05 18:17:53 +00:00
edideaur
03ea16ac04
fix settings > system issue
2026-03-05 17:32:53 +00:00
edideaur
f967d29c52
donate and about page changes
2026-03-03 20:47:49 +00:00
edideaur
b29160385a
keybind rebinding
2026-03-03 12:20:42 +00:00
edidealt
9054016ff2
settings import + export
2026-03-02 23:32:51 +00:00
edidealt
be67f79968
Merge pull request #266 from DanTheMan827/more-metadata
...
feat(downloads): add more metadata
2026-03-03 00:24:44 +02:00
Daniel
8035dd3873
feat(downloads): add BPM tag to Vorbis comments and MP4 metadata
...
- Added 'TEMPO' tag to Vorbis comments if BPM is available
- Added 'tmpo' tag to MP4 metadata if BPM is available
2026-03-02 21:38:16 +00:00
Daniel
82ca593894
fix(downloads): fix malformed m4a user atoms
2026-03-02 21:14:15 +00:00
edidealt
69652ba085
escaping
2026-03-02 21:14:14 +00:00
edidealt
3de1221c20
navigation
2026-03-02 21:04:04 +00:00
SamidyFR
0999fefda4
style: auto-fix linting issues
2026-03-02 20:42:59 +00:00
Samidy
103cce6338
Merge branch 'main' of github.com:monochrome-music/monochrome
2026-03-02 23:42:14 +03:00
Samidy
e983030c23
feat(community themes): edit themes after publishing theme
2026-03-02 23:42:09 +03:00
edidealt
ebccec5903
FULLY hide show ui button
2026-03-02 20:35:45 +00:00
edidealt
5e437d4019
fullscreen mode settings
2026-03-02 20:14:25 +00:00
Daniel
6c09793276
feat(downloads): add XID ISRC tag to MP4 metadata
...
- Added 'xid ' tag for ISRC in createMp4MetadataAtoms function
2026-03-02 19:13:18 +00:00
Daniel
c430a5bd7e
fix(downloads): fix malformed m4a replaygain metadata
2026-03-02 17:59:05 +00:00
edideaur
b55734933d
Merge pull request #263 from DanTheMan827/m4a-replaygain
...
feat(downloads): write replaygain to m4a tracks
2026-03-02 09:55:42 +02:00
SamidyFR
0735d2a202
style: auto-fix linting issues
2026-03-02 04:14:10 +00:00
Samidy
46c565e437
Merge branch 'main' of github.com:monochrome-music/monochrome
2026-03-02 07:13:46 +03:00
Samidy
5eabfc13e8
donate button shit
2026-03-02 07:13:41 +03:00
Samidy
23fdf10f86
fix(import): prevent incorrect artist matches and missing tracks
2026-03-02 06:47:50 +03:00
Daniel
2b2f61d1ee
feat(downloads): write replaygain to m4a tracks
2026-03-01 23:57:33 +00:00
edidealt
3a0edc3066
fix mpris covers
2026-03-01 11:48:39 +00:00
edidealt
2d8d93cbfa
fix for firefox?
2026-03-01 11:29:40 +00:00
edidealt
5cac487c0f
pitch shit
2026-03-01 10:52:03 +00:00
edidealt
a885e3d05a
style: auto-fix linting issues
2026-03-01 10:23:30 +00:00
edidealt
eb61e87980
Merge pull request #260 from itsgareth/gareth/fix-ios-lockscreen-controls
...
feat: fix ios lockscreen controls
2026-03-01 12:23:08 +02:00
edidealt
de3e125bac
Merge pull request #261 from ericdaddario02/feature/replay-gain-flac
...
feat(downloads): save replay gain tags to FLAC metadata
2026-03-01 12:15:00 +02:00
Eric D'Addario
39206f4128
feat(downloads): save replay gain tags to FLAC metadata
2026-02-28 16:03:45 -05:00
Gareth Dawson
13ac84880b
fix comment indentation
2026-02-28 19:05:47 +00:00
Gareth Dawson
523aa2d710
feat: fix ios lockscreen controls
2026-02-28 18:58:50 +00:00
Daniel
120073aea4
fix(downloads): write full track title to metadata
2026-02-28 16:55:37 +00:00
binimum
fb5fe05414
Remux instead of transcode
2026-02-28 11:59:27 +00:00
edidealt
e8ad19b2d7
Merge pull request #251 from DanTheMan827/lossless-container-option
...
feat(downloads): add lossless container option
2026-02-28 13:19:07 +02:00
edidealt
72eae8f411
style: auto-fix linting issues
2026-02-28 11:18:26 +00:00
Daniel
dcf8563254
feat(downloads): add explicit content rating support
...
- Write ITUNESADVISORY for FLAC
- Write rtng for M4A
- Read the corresponding values from local media
2026-02-28 02:49:13 +00:00
Samidy
fc28f9faeb
Apply suggestion from @Copilot
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-02-28 02:00:58 +03:00
Samidy
9ff62c52d4
Apply suggestion from @Copilot
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-02-28 02:00:37 +03:00
Eduard Prigoana
fa4da493e6
UI hiding
2026-02-27 22:57:11 +00:00
Eduard Prigoana
4b5dc5865e
consistent playback speed
2026-02-27 22:05:45 +00:00
Daniel
07422debb9
feat(downloads): add lossless container option
...
This uses ffmpeg to ensure that the downloaded lossless audio is in the desired container format.
2026-02-27 21:23:33 +00:00
Samidy
2f7f0e61dc
Merge branch 'main' of github.com:monochrome-music/monochrome
2026-02-27 23:36:22 +03:00
Samidy
ca173c2d58
fix(animated-covers): edis a fat worm
2026-02-27 23:36:19 +03:00
Samidy
6dbcd17e41
Merge pull request #250 from DanTheMan827/mp3-bulk-download-fix
...
fix(downloads): handle MP3_320 format in bulk downloads
2026-02-27 23:36:06 +03:00
Daniel
353ced831b
fix(downloads): handle MP3_320 format in bulk downloads
2026-02-27 20:32:19 +00:00
Daniel
52ad38c080
refactor(downloads): abstract ffmpeg worker logic
...
This refactors the ffmpeg worker logic and abstracts it into its own script file for easier use elsewhere.
2026-02-27 20:24:20 +00:00
SamidyFR
4aaffd2c22
style: auto-fix linting issues
2026-02-26 23:19:38 +00:00
Samidy
1c1d202e91
Merge pull request #235 from gpulch/feat/mp3-download-ffmpeg-wasm
...
feat: add ffmpeg.wasm + MP3 320kbps download option
2026-02-27 02:19:13 +03:00
Samidy
7d4294f906
my free trial ran out
2026-02-24 19:58:19 +03:00
Eduard Prigoana
424ee12d04
feat: animated covers
2026-02-24 12:43:36 +00:00
SamidyFR
700645919c
style: auto-fix linting issues
2026-02-23 22:58:08 +00:00
Samidy
38434f5419
Merge branch 'main' of github.com:monochrome-music/monochrome
2026-02-24 01:57:43 +03:00
Samidy
29b4899089
feat(themes): Community Themes
2026-02-24 01:57:17 +03:00
Eduard Prigoana
895cc20d26
whoops
2026-02-23 17:50:35 +00:00
Eduard Prigoana
49c054e64a
userplaylists in editor picks + refresh button for playlist suggestions
2026-02-23 17:41:45 +00:00
gpulch
cde7080052
fix: address code review feedback
...
Inline fixes:
- Remove TDRC frame from ID3 writer (ID3v2.3 uses TYER only, not TDRC)
- Add try/finally cleanup in worker to prevent VFS leaks on errors
- Fix Blob creation to use Uint8Array directly (avoid extra bytes)
- Replace loadFFmpeg race guard with promise singleton pattern
- Add -map_metadata -1 to strip source metadata (prevent duplicate ID3)
Error handling improvements:
- Create MP3EncodingError class with code property for reliable detection
- Update api.js to use instanceof check instead of string matching
- Pass AbortSignal to encodeToMp3 for proper cancellation support
- Remove error re-wrapping in mp3-encoder.js (preserve original errors)
Technical details:
- Promise singleton ensures FFmpeg loads once even with concurrent calls
- AbortSignal listener properly cleaned up on success/error/abort
- Virtual FS cleanup in finally block prevents file leaks
- MP3EncodingError.code = 'MP3_ENCODING_FAILED' for robust detection
2026-02-23 10:49:05 +01:00
Eduard Prigoana
fe6b1e9fad
favourites importing
2026-02-22 21:31:53 +00:00
Julien Maille
1aaf2dfd46
Fix API instances settings list rendering for object entries
2026-02-22 21:26:59 +01:00
gpulch
8a17bddbc3
feat: add MP3 320kbps download option with ffmpeg.wasm
...
Implements MP3 320kbps download functionality using ffmpeg.wasm for
industry-standard encoding with libmp3lame.
Features:
- New MP3_320 quality option in download settings UI
- ID3v2.3 metadata writing (title, artist, album, cover art, ISRC, etc.)
- Non-blocking encoding via Web Worker to keep UI responsive
- Proper UTF-16 with BOM text encoding for international characters
- Album artist fallback to track artist (mirrors FLAC/M4A behavior)
- Automatic format detection for downloaded audio
- Year validation to prevent writing NaN to ID3 tags
Implementation:
- mp3-encoder.js: Main encoder module with worker orchestration
- mp3-encoder.worker.js: FFmpeg Web Worker for async encoding
- id3-writer.js: ID3v2.3 tag writer with synchsafe size encoding
- Updates to api.js, metadata.js, utils.js for MP3 support
- Vite config excludes @ffmpeg packages from dep optimization
Technical details:
- Uses @ffmpeg/ffmpeg (libmp3lame 320kbps CBR, 44.1kHz)
- FFmpeg binary lazy-loaded from CDN (~25MB, cached)
- Encoding runs in separate thread (non-blocking UI)
- Proper error handling with distinct encoding vs network errors
- Memory-efficient: transfers ArrayBuffer with zero-copy
Dependencies:
- @ffmpeg/ffmpeg ^0.12.10
- @ffmpeg/util ^0.12.1
- Removed: package-lock.json (project uses bun.lock)
Closes maintainer request to use ffmpeg.wasm instead of lamejs.
2026-02-22 19:13:03 +01:00
EduardPrigoanaAlt
6b55fd4c7a
style: auto-fix linting issues
2026-02-22 15:47:05 +00:00
GooglyBlox
747f50f564
feat: add all artists to metadata
2026-02-21 18:31:43 -08:00
Julien Maille
c1973e81ff
Shuffle full artist discography instead of artist radio
2026-02-22 00:57:42 +01:00
JulienMaille
651f4282e5
style: auto-fix linting issues
2026-02-21 23:33:29 +00:00
Julien Maille
bf346f756e
Add multi-disc ZIP folders and fix playlist extension paths
2026-02-22 00:32:45 +01:00
Julien Maille
400197aabc
Write disc number metadata for FLAC and M4A downloads
2026-02-21 23:52:33 +01:00
Julien Maille
888703f18b
fix: resolve persistent labels
2026-02-21 23:42:45 +01:00
Julien Maille
73b9867d4b
FIX: tooltip and css issues
2026-02-21 23:33:30 +01:00
Samidy
77d99245c8
feat(artists): artists socials
2026-02-22 01:04:02 +03:00
SamidyFR
87a8368fc3
style: auto-fix linting issues
2026-02-21 19:58:57 +00:00
Sietse
1f13e34249
fix(player): Uniform shuffle
...
Replaces the current naive solution with Fisher-Yates
2026-02-21 20:53:42 +01:00
binimum
1188a2dcce
style: auto-fix linting issues
2026-02-21 14:57:44 +00:00
binimum
01309a9a15
Change instances.json in favour of Workers which have live API uptime
2026-02-21 14:56:55 +00:00
Julien Maille
acf64cbc17
fix: prevent home page double refresh and improve artist name extraction in album cards
2026-02-21 14:17:46 +01:00
JulienMaille
384dd867cd
style: auto-fix linting issues
2026-02-21 10:35:52 +00:00
Julien Maille
43a6e17df9
FIX: search history
2026-02-21 11:35:27 +01:00
Julien Maille
baec739b01
IMP: viz performances
2026-02-21 11:33:08 +01:00
Julien Maille
2bd42fc202
feat: add ISRC and copyright metadata support for M4A downloads
2026-02-21 10:30:17 +01:00
Julien Maille
3cab0926e4
Avoid skipping tracks when autoplay is blocked
...
# Conflicts:
# js/player.js
2026-02-21 10:30:17 +01:00
Julien Maille
0d16ea28a8
Avoid skipping tracks when autoplay is blocked
2026-02-21 01:12:54 +01:00
Samidy
1108a44df9
Merge branch 'main' of github.com:monochrome-music/monochrome
2026-02-21 02:32:04 +03:00
Samidy
07376b7d55
fix(track pages): fix these idiots not loading
2026-02-21 02:30:41 +03:00
Samidy
8c79e69382
feat(search): search recs in queue
2026-02-21 02:30:03 +03:00
JulienMaille
8731ddb502
style: auto-fix linting issues
2026-02-20 23:07:15 +00:00
Julien Maille
ae853636ce
IMP: 192kHz playback, adapted visualizers
2026-02-21 00:07:00 +01:00
SamidyFR
9b269d14fd
style: auto-fix linting issues
2026-02-20 19:09:51 +00:00
Samidy
61da5c47b0
cover images on local files ⁉️
2026-02-20 21:57:17 +03:00
Samidy
790a3b7f94
lol
2026-02-20 20:42:12 +03:00
BlackSigkill
bddf5a0d73
fix linting errors/warnings
2026-02-20 15:48:23 +01:00
SamidyFR
de8064410d
style: auto-fix linting issues
2026-02-20 13:22:40 +00:00
Samidy
04e4de0fb8
fix(APIs): remove now broken free tier API, oh and other stuff but idc
2026-02-20 16:22:13 +03:00
EduardPrigoanaAlt
82700ae42e
style: auto-fix linting issues
2026-02-20 10:50:13 +00:00
BlackSigkill
be7ca88221
keep track's artists order the same in subcontext menu
2026-02-20 10:57:58 +01:00
BlackSigkill
8be0fa944b
add sub context menu for artists + add links to artists
2026-02-20 10:49:56 +01:00
BlackSigkill
eddb202b1b
allow multi artist selection (go to artist context menu)
2026-02-20 10:16:08 +01:00
BlackSigkill
cefc49777c
lint & prettier
2026-02-19 23:48:44 +01:00
BlackSigkill
242541a7bb
remove qobuz bio as i can't test it
2026-02-19 23:45:43 +01:00
BlackSigkill
acc9d8b5cd
add tidal biography to artists pages
2026-02-19 23:37:18 +01:00
SamidyFR
48937ed573
style: auto-fix linting issues
2026-02-19 13:55:31 +00:00
Samidy
5eba6aa224
Merge branch 'main' of github.com:monochrome-music/monochrome
2026-02-19 16:55:02 +03:00
Samidy
250ebb9f99
feat(social): profiles feature
2026-02-19 16:54:58 +03:00
Julien Maille
d05a0ea9c0
FIX: local files in desktop app
2026-02-18 21:33:34 +01:00
Eduard Prigoana
a9f3acb289
fix4dwayne
2026-02-18 04:19:12 +00:00
Eduard Prigoana
64ff09910b
close modals on navigation
2026-02-18 03:50:00 +00:00
Eduard Prigoana
03a7dcda52
fix codeql suggestions
2026-02-18 03:30:20 +00:00
Eduard Prigoana
62fe4fca8e
whoops
2026-02-18 03:22:20 +00:00
Eduard Prigoana
58b77e904b
fix codeql stuff
2026-02-18 03:17:37 +00:00
Eduard Prigoana
120c725233
guess who goin to jail tonight
2026-02-17 23:49:51 +00:00
Eduard Prigoana
f20f3dbb9d
EQ changes
2026-02-17 20:22:47 +00:00
Eduard Prigoana
2fce3e382e
make all editors picks show at once and make the line going through equalizer be at midpoint
2026-02-17 17:38:59 +00:00
SamidyFR
5663b841c9
style: auto-fix linting issues
2026-02-16 19:27:03 +00:00
Samidy
1cac6d249b
Merge branch 'main' of github.com:monochrome-music/monochrome
2026-02-16 22:26:42 +03:00
Samidy
50d2dd252a
feat(Playlists): youtube music imports, refined imports menu
2026-02-16 22:26:38 +03:00
binimum
2d0ab393a7
style: auto-fix linting issues
2026-02-16 18:20:50 +00:00
binimum
48a1a87104
Change lyrics highlight colour based on light/dark mode
2026-02-16 18:19:43 +00:00
Samidy
7496585b1b
fix(User Playlists): fix track reordering
2026-02-16 17:36:49 +03:00
IsraelGPT
d0678cfc6c
i had cors allowence on again
2026-02-16 13:44:45 +00:00
IsraelGPT
18fc409e56
feat: playlist art uploads?
2026-02-16 13:40:36 +00:00
IsraelGPT
399a48a386
unblocking
2026-02-16 00:55:19 +00:00
IsraelGPT
a6b27fbfc3
clear queue on navigation
2026-02-16 00:48:05 +00:00
IsraelGPT
830155c14a
more imports
2026-02-16 00:36:36 +00:00
IsraelGPT
084bf957f5
FMCL
2026-02-15 23:57:06 +00:00
IsraelGPT
762488d823
load skeleton styling
2026-02-15 23:39:56 +00:00
IsraelGPT
b531d31dc1
Merge pull request #199 from itsgareth/fix/remove-linting-errors
...
fix: resolve all yarn lint errors
2026-02-16 00:08:15 +02:00
IsraelGPT
a0b7779520
Merge pull request #198 from itsgareth/fix/sidebar-settings-main-bottom-nav-sections-v2
...
fix(settings): restrict sidebar reorder to main vs bottom sections
2026-02-16 00:07:45 +02:00
Gareth Dawson
933d0e6a40
fix: resolve all yarn lint errors
2026-02-15 21:53:00 +00:00
Gareth Dawson
bd2ef5d8d5
fix(settings): restrict sidebar reorder to main vs bottom sections
2026-02-15 21:06:48 +00:00
Julien Maille
d0627fc14c
FIX: pinned items overflow
2026-02-15 21:56:08 +01:00
Julien Maille
179e08c148
FIX: one last try to fix media keys on linux
2026-02-15 21:30:32 +01:00
binimum
5999f7312f
Nope, turns out I did it wrong
2026-02-15 20:11:15 +00:00
Julien
71bf5e3935
Merge pull request #196 from binimum/patch-1
...
Update am-lyrics to use latest version
2026-02-15 21:08:47 +01:00
JulienMaille
5cd0d10b77
style: auto-fix linting issues
2026-02-15 20:08:02 +00:00
Julien Maille
8eaafd7e18
FIX: share link from neutralino's app
2026-02-15 21:07:43 +01:00
binimum
9a566e8f09
Update am-lyrics to use latest version
2026-02-15 20:06:22 +00:00
Julien Maille
094ae91af9
BREAK IT: the damn auth login (and fix neutralino downloads too)
2026-02-15 20:55:32 +01:00
Julien Maille
db66767dde
BREAK IT: the damn auth login (and fix neutralino downloads too)
2026-02-15 20:08:47 +01:00
IsraelGPT
c23f858412
JSPF playlist imports + plausible
2026-02-15 16:30:54 +00:00
IsraelGPT
790f5ee8b4
more font size changing
2026-02-15 15:30:48 +00:00
IsraelGPT
0b20caff69
equalizer changes
2026-02-15 15:01:34 +00:00
Julien Maille
127a57138b
FIX: hover tooltip could be out of the screen
2026-02-15 14:22:53 +01:00
Julien Maille
9a6d4da463
FIX: google auth on windows/web
...
# Conflicts:
# js/accounts/auth.js
2026-02-15 12:59:51 +01:00
IsraelGPT
7233fb5fbf
fix Discord and Download link are visible even if not activated in home menu
2026-02-15 11:30:04 +00:00
Julien Maille
d76526f5e9
FIX: google auth on windows/web
2026-02-15 10:25:27 +01:00
Gareth Dawson
0d1910285c
fix: restore iOS background play by detecting iOS before UA spoof
2026-02-14 22:56:33 +00:00
SamidyFR
3a52196b56
style: auto-fix linting issues
2026-02-14 19:41:08 +00:00
Samidy
2b9c9b344c
Merge branch 'main' of github.com:SamidyFR/monochrome
2026-02-14 22:40:44 +03:00
Samidy
c69d497037
feat(sidebar): pinned items
2026-02-14 22:40:39 +03:00
Eduard Prigoana
b47e11ef48
fix(iOS): don't set isInitialized flag when skipping Web Audio on iOS
...
Previously, the code was setting isInitialized = true on iOS even though
no AudioContext was created. This caused isReady() to return true, which
led other code to try to use the non-existent audio context.
Now isInitialized remains false on iOS, so isReady() returns false and
the code properly falls back to using the standard HTMLAudioElement APIs.
2026-02-14 20:01:09 +01:00
Eduard Prigoana
d7dde87023
add loading skeletons
2026-02-14 17:49:54 +00:00
Eduard Prigoana
a941faaa4e
Merge branch 'pr-183'
...
# Conflicts:
# js/md5.js
2026-02-14 16:46:19 +00:00
Eduard Prigoana
615f5dc8bd
add apple music fonts
2026-02-14 16:43:05 +00:00
JulienMaille
1e519002be
style: auto-fix linting issues
2026-02-13 23:46:59 +00:00
Julien Maille
1a7a16d501
WIP: trying to fix neutralino linux
2026-02-14 00:46:31 +01:00
Julien Maille
decdacc812
WIP: trying to fix neutralino linux
2026-02-13 21:43:01 +01:00
Julien Maille
7eaea145f5
IMP: settings
2026-02-13 21:25:36 +01:00
Julien Maille
02cf092904
FIX: try to fix application volume control on linux
2026-02-13 21:02:00 +01:00
BlackSigKill
310d5434c9
fix all linting (js/html/css)
2026-02-13 18:01:46 +01:00
Julien Maille
7e635143be
FIX: context menu on mobile or small screens
2026-02-12 23:17:20 +01:00
Julien Maille
7b938025d7
FIX: enforce playlist folder deletion
2026-02-12 16:43:26 +01:00
JulienMaille
ba859ab697
style: auto-fix linting issues
2026-02-12 15:11:14 +00:00
Julien Maille
1a4c75f833
FIX: several bugs
2026-02-12 16:10:51 +01:00
Julien Maille
952da07230
IMP: cleanup and add npm run dev:desktop to test neutralino app locally
2026-02-12 16:00:19 +01:00
JulienMaille
64a9171f79
style: auto-fix linting issues
2026-02-12 13:55:36 +00:00
Julien Maille
cafa97cb0f
refactor(desktop): separate js for neutralino from the js used on the website
2026-02-12 14:55:06 +01:00
Eduard Prigoana
0213132606
improve qobuz functionality
2026-02-12 09:44:35 +00:00
Samidy
d50f4f7223
fix(Genius For Lyrics): Fix Genius For Lyrics Not Loading
2026-02-11 16:20:25 +03:00
Julien Maille
baf13606e8
FIX: missing extractStreamUrlFromManifest
2026-02-11 12:06:09 +01:00
Eduard Prigoana
1134680c88
(WIP) add qobuz
2026-02-11 10:28:48 +00:00
Eduard Prigoana
304eb78d7b
set butterchurn as the default visualizer
2026-02-11 09:49:59 +00:00
JulienMaille
0ac75ca910
style: auto-fix linting issues
2026-02-10 23:19:24 +00:00
Julien Maille
9f67938810
WIP: neutralino linux
2026-02-11 00:18:58 +01:00
Eduard Prigoana
b2fcfa1d52
add /t/ for future qobuz and soundcloud integration
2026-02-10 22:10:40 +00:00
Julien Maille
8afb4a4c6d
WIP: neutralino linux
2026-02-10 23:00:58 +01:00
Eduard Prigoana
f6dae2223f
artist blocking
2026-02-10 21:03:48 +00:00
Eduard Prigoana
ea005c68ad
remove pitch changing and allow more granular playback speed control, remember what setting tab youre on
2026-02-10 19:57:18 +00:00
JulienMaille
63e9a71456
style: auto-fix linting issues
2026-02-10 17:46:26 +00:00
Julien Maille
89548fa0d3
WIP: neutralino
...
# Conflicts:
# js/app.js
# js/neutralino-bridge.js
# public/neutralino_loader.html
2026-02-10 18:40:55 +01:00
JulienMaille
23cf99f189
style: auto-fix linting issues
2026-02-10 12:52:50 +00:00
Julien Maille
1e19b3026c
WIP: neutralino
2026-02-10 13:52:06 +01:00
Samidy
2d43e2d3cc
Merge branch 'main' of github.com:SamidyFR/monochrome
2026-02-10 15:37:18 +03:00
Samidy
d3bee6f066
fix(Player): add back add playlist button in player
2026-02-10 15:37:14 +03:00
Julien Maille
2c165d7148
FIX: clean my own mess
2026-02-10 13:19:54 +01:00
Eduard Prigoana
37b0747e05
add a clear site data button and auto-updates
2026-02-10 10:41:53 +00:00
Julien Maille
ca3962c140
build: fix CI linting errors and update lockfile
2026-02-10 11:19:20 +01:00
Julien Maille
22365976c9
FIX: vite warnings
2026-02-10 10:09:56 +01:00
Julien Maille
8f27000fcf
add RPC to neutralino
2026-02-10 00:15:46 +01:00
Julien Maille
e9e37c9be1
Fix Linux auth: Use signInWithRedirect fallback
2026-02-09 23:56:11 +01:00
Julien Maille
ff7b17b4eb
feat: Add Neutralino desktop integration
2026-02-09 23:56:11 +01:00
Eduard Prigoana
ff907452c7
Merge pull request #169 from blacksigkill/feature/global-auth
...
Feature: global auth
2026-02-09 22:36:15 +02:00
Eduard Prigoana
f3810cb888
Merge pull request #168 from blacksigkill/feature/reorder-sidebar
...
Feature : reorder/reorganize sidebar
2026-02-09 22:35:51 +02:00
Eduard Prigoana
f73c75f668
user playlists descriptions
2026-02-09 20:34:40 +00:00
BlackSigkill
ed579624e2
fix linting
2026-02-09 20:48:02 +01:00
BlackSigKill
20fc0e8f8e
add a description/howto (AUTH_GATE.md)
...
Harden auth gate by disabling PWA caching
2026-02-09 20:46:43 +01:00
BlackSigkill
667a861b1d
fix settings (with toggles) layout
2026-02-09 20:40:42 +01:00
BlackSigkill
72c32fe702
Allow sidebar menu reorder
2026-02-09 20:34:00 +01:00
BlackSigKill
7e6ff83192
fix linting
2026-02-09 20:25:04 +01:00
BlackSigKill
c77507dfe0
prettify
2026-02-09 20:23:06 +01:00
BlackSigKill
c1ebce949c
fix: default off, show custom db in settings when missing envs, redirect logged-in /login
2026-02-09 20:20:33 +01:00
BlackSigKill
5ffb14560b
add server-side global auth for private selfhosted instance
2026-02-09 19:44:35 +01:00
Samidy
becbbea9d3
Merge branch 'main' of github.com:SamidyFR/monochrome
2026-02-09 18:38:21 +03:00
Samidy
0bccd4fea5
fix(Accounts): fix public playlists not updating after first set
2026-02-09 18:38:18 +03:00
Eduard Prigoana
29061ccd30
editor pick changes
2026-02-09 15:37:13 +00:00
Samidy
878131fae2
oops forgot this
2026-02-09 17:33:54 +03:00
Eduard Prigoana
f81973af88
pitch and speed in settings, back to ko-fi
2026-02-09 14:04:40 +00:00
Eduard Prigoana
af1c0fc1ee
feat: exponential volume
2026-02-09 13:36:33 +00:00
Eduard Prigoana
43be45b76f
feat: username and password scrobbling for last.fm
2026-02-09 12:33:11 +00:00