Commit graph

1087 commits

Author SHA1 Message Date
edideaur
27defce9b0 style: auto-fix linting issues 2026-03-28 13:19:22 +00:00
Eduard Prigoana
0b6262cdca re-add auth sources 2026-03-28 15:18:54 +02:00
edidealt
416f2ca6aa style: auto-fix linting issues 2026-03-28 09:42:05 +00:00
edidealt
6ace8e19be
Merge branch 'main' into fix/ui-ux-video-library-fullscreen 2026-03-28 11:28:38 +02:00
Eduard Prigoana
e809d1443f fix trackers, remove AI slop 2026-03-28 01:04:30 +02:00
Thiago Vinícius
8cf7010e7f 🐛 fix: library liked track card link (grid plays like list); my playlists grid layout 2026-03-27 18:32:13 -03:00
Thiago Vinícius
5be3d39b1b 🐛 fix: CodeRabbit review (library search, covers, likes, layout classes, clear-btn, styles) and lint workflow; keep scroll on list/grid toggle
Made-with: Cursor
2026-03-27 18:20:11 -03:00
Thiago Vinícius
2e92a34b00 🐛 fix: issues flagged by CodeRabbit
Made-with: Cursor
2026-03-27 18:11:12 -03:00
Thiago Vinícius
75a1465977 fix(ui): drop empty playlists placeholder and fix inline-like track grid on narrow viewports
Made-with: Cursor
2026-03-27 17:15:22 -03:00
Samidy
628b8ae017
Merge pull request #435 from vladbrox/main
HOTFIX: Fix track validation in loveTrack method
2026-03-27 22:32:05 +03:00
Thiago Vinícius
520c778f84 fix(ui): video library cards, fullscreen layout, and search UX
Made-with: Cursor
2026-03-27 16:26:51 -03:00
David Zeng
09bc49bd60
Merge branch 'monochrome-music:main' into fix-local-folder 2026-03-27 19:59:11 +01:00
David ZENG
d15a99dad8 fix(library) fixed undefined error, when importing local music folder 2026-03-27 19:55:09 +01:00
SamidyFR
4a38afe810 style: auto-fix linting issues 2026-03-27 18:52:20 +00:00
Mrigakshi Roy Choudhury
65d0eadb71 fix(library): share playlist with the correct url 2026-03-28 00:13:36 +05:30
.vlad
2b67fc2609
Fix condition in loveTrack method 2026-03-27 18:45:57 +03:00
SamidyFR
121aa44fd1 style: auto-fix linting issues 2026-03-27 15:42:30 +00:00
Samidy
b7be5a6556
Merge pull request #434 from vladbrox/main
Listebrainz improvments
2026-03-27 18:42:00 +03:00
.vlad
8177cc4789
Fix artist name check in loveTrack method
Add null check for artist name in loveTrack method.
2026-03-27 18:35:48 +03:00
.vlad
c3c3005428
fix issues. now use set for lovingTracks, lbid album check, const and let var fix 2026-03-27 18:21:22 +03:00
Samidy
68512c957a
Merge pull request #430 from vladbrox/main
Refactor MBID lookup and add love lock
2026-03-27 18:18:48 +03:00
.vlad
27c2a7b092
Refactor MBID lookup and add loving functionality 2026-03-27 17:26:35 +03:00
Samidy
4e75a734a2 remove qobuz 2026-03-27 14:30:39 +03:00
Eduard Prigoana
b962853b69 weights 2026-03-26 20:36:42 +02:00
Daniel
80cd8b2f9b refactor(downloads): cleanup downloads and add mp4 stik atom 2026-03-24 14:10:28 -05:00
edideaur
23c5baae5f style: auto-fix linting issues 2026-03-23 20:01:26 +00:00
Eduard Prigoana
1e8e62dbee remove unexistent instances from tracker.js and add new instance 2026-03-23 22:00:53 +02:00
edideaur
7f61e723da
Merge pull request #401 from DanTheMan827/hifi-update
Refactor HiFi.ts and add trackManifests route
2026-03-23 21:57:34 +02:00
Daniel
2440939f4b refactor(hifi): update HiFi.ts to add trackManifests route and refactor 2026-03-23 13:42:03 -05:00
Daniel
21cbfcdbf4 fix(hifi): throw errors instead of returning json with the error 2026-03-23 09:35:04 -05:00
edideaur
15e6e99269 d-d-d-d-drop that bitch 2026-03-23 16:30:51 +02:00
binimum
ef142f2ff0 style: auto-fix linting issues 2026-03-22 20:38:39 +00:00
binimum
44d92b46dc
feat: implement side panel resizer and responsive styles 2026-03-22 20:38:08 +00:00
binimum
d9878596e2 style: auto-fix linting issues 2026-03-22 20:13:27 +00:00
binimum
98cc3b9391
Merge branch 'main' of https://github.com/monochrome-music/monochrome 2026-03-22 20:11:37 +00:00
binimum
d783642401
feat: add Atmos support, use new API endpoint, streamline API caching 2026-03-22 20:08:30 +00:00
edidealt
6ed58333e7 style: auto-fix linting issues 2026-03-22 19:13:04 +00:00
Daniel
111ade245f
fix(metadata): lyrics are now fetched 2026-03-22 14:05:07 -05:00
edideaur
b6e8068652 capacitor app 2026-03-22 20:59:00 +02:00
edidealt
4d18704e2e sure this works i guess 2026-03-22 04:57:18 +00:00
edidealt
c2f8d3fca1 feat: podcasts 2026-03-22 04:32:20 +00:00
Samidy
3cd54a2b5f fix(reset password): change reset-password link to remove .html (causes issues) 2026-03-22 07:30:22 +03:00
edidealt
7e16dc23c2
Merge pull request #380 from DanTheMan827/singleton
Convert classes to singleton pattern
2026-03-22 03:36:13 +02:00
edidealt
6f8b479d0f infinite track playing for popular tracks 2026-03-21 23:25:16 +00:00
Daniel
e32fbc3813 refactor(UIRenderer): convert to singleton 2026-03-21 18:14:48 -05:00
Daniel
2fdd169ba0 refactor(Hifi): convert to singleton 2026-03-21 18:05:09 -05:00
Daniel
aa1c6944d2 feat: expose certain classes under the monochrome object when in dev mode 2026-03-21 17:41:19 -05:00
Daniel
c768f8d675 refactor(lyrics): convert to singleton 2026-03-21 17:36:23 -05:00
Daniel
fb4b72bc39 refactor(music-api): convert to singleton 2026-03-21 17:29:04 -05:00
Daniel
852baeaa17 refactor(player): convert to singleton 2026-03-21 17:21:09 -05:00
Daniel
6728b17efe fix: bun format 2026-03-21 16:56:05 -05:00
akane
7008de33b0 fix(ui): revert history dedup to preserve play frequency 2026-03-21 12:33:25 -07:00
akane
446b6fff55 fix(ui): deduplicate recommended songs on homepage 2026-03-21 12:30:38 -07:00
akane
da5ade79a7 perf(ui): cache settings Fuse instance in command palette 2026-03-21 12:04:25 -07:00
akane
7e56fc5030 fix(ui): command palette accessibility, theme handling, and edge cases 2026-03-21 11:56:34 -07:00
akane
d75f0e3196 refactor(ui): use icons.ts for command palette icons 2026-03-21 11:53:16 -07:00
akane
3415901bdb feat(ui): add cmdk-style command palette 2026-03-21 11:35:09 -07:00
Daniel
c74389d330
fix(metadata): write xid to mp4 files 2026-03-20 19:44:21 -05:00
edidealt
e22d2b96ad separate donate page 2026-03-21 00:03:19 +00:00
edidealt
d8709f447f
Merge pull request #369 from DanTheMan827/copilot/add-bulk-download-options
Add bulk download options and streamline settings API
2026-03-21 01:48:07 +02:00
DanTheMan827
5c5ea904c8 style: auto-fix linting issues 2026-03-20 23:00:41 +00:00
Daniel
397fc53a46 feat(downloads): add local media folder bulk download options and folder template paths
This also implements a ModernSettings class for a more streamlined settings API.
2026-03-20 18:00:14 -05:00
edidealt
086b190308 Merge pull request #366 from matioku/fix/share-url-construction
fix(events): fix share/open-in-new-tab URL construction
2026-03-20 22:57:53 +00:00
edidealt
f9a58b1cac
Merge pull request #368 from DanTheMan827/patch-1
refactor(hifi): update localStorage and token handling
2026-03-21 00:40:15 +02:00
edidealt
90f4930634 whoops forgot mobile selection 2026-03-20 22:36:38 +00:00
edidealt
ab11ff6a37 multi-track selection 2026-03-20 22:28:08 +00:00
Daniel
4f0d95bf42
refactor(hifi): update localStorage and token handling
Modified token encoding to use globalThis and added a setToken method.
2026-03-20 17:13:23 -05:00
edidealt
cc2f28a798 fix track right clicks 2026-03-20 20:54:05 +00:00
matioku
8f1994d9d3
fix(events): fix share/open-in-new-tab URL construction 2026-03-20 21:30:15 +01:00
Daniel
1bd895093b fix(HiFi): enhance token fetching 2026-03-20 14:32:30 -05:00
edidealt
9071670ad9
Merge pull request #363 from DanTheMan827/video-metadata
Add metadata support for video downloads
2026-03-20 20:25:07 +02:00
Daniel
5d697760d0 fix(HiFi.ts): cache token 2026-03-20 13:19:15 -05:00
Daniel
5ac4d23199 fix(HiFi.ts): ensure only one token is fetched
If multiple calls to the HiFi methods were called at once, you could potentially have ended up with multiple simultaneous token api calls
2026-03-20 13:12:40 -05:00
edidealt
7bcb9e1fb5 listenbrainz love on like 2026-03-20 18:07:06 +00:00
Daniel
a385cb558a fix(api): use an instance for /recommendations 2026-03-20 13:02:48 -05:00
Daniel
f2b8cdc812 feat(downloads): add metadata to videos 2026-03-20 12:52:07 -05:00
Daniel
8edca3678d fix(api): remove domain checks from searchVideos 2026-03-20 11:57:38 -05:00
Daniel
b48ee588aa fix(api): don't cache direct queries
This also adds a global `window.allTidal` flag to force all queries to go through the API, which is useful for testing.
2026-03-20 11:54:04 -05:00
Daniel
47b8c36594 fix(api): use direct queries when possible 2026-03-20 11:38:31 -05:00
binimum
f378552028 refactor: add formatTemplate import to downloads.js 2026-03-20 00:33:05 +00:00
binimum
5bb8713bbf
refactor: update MediaPlayer import and add platform detection 2026-03-19 21:01:29 +00:00
edidealt
0b2b91a8a4 fix builds 2026-03-19 20:49:16 +00:00
Daniel
c19dbcf52a refactor: adjust imports to allow for file splitting
- dynamically import router
- dynamically import visualizers
- update import syntax for am-lyrics to use dynamic import syntax
2026-03-19 15:34:51 -05:00
Daniel
4e2a595504 refactor(hls/dash): externalize hls.js and dashjs to reduce initial bundle size 2026-03-19 15:34:51 -05:00
Daniel
e2a09b9b32 refactor: externalize svg images and add new vite plugin
The plugin runs all imported SVG files through svgo.

For index.html, you can use the following syntax:
```html
<use svg="file.svg" size="24" />
```

For scripts, use the `?svg` import query
```javascript
import SVG_FILE from './file.svg?svg&size=24
```

Note: size is shorthand for specifying both width and height individually.  You can also set any property of the base SVG element.

You can also use the `?svg&icon` query to return a function that allows dynamically resizing the SVG string.
2026-03-19 15:28:33 -05:00
edidealt
affb6dd5de
Merge pull request #350 from DanTheMan827/replace-taglib-wasm
Replace taglib-wasm with taglib-ts
2026-03-19 22:22:38 +02:00
edidealt
6b986402ff
Merge pull request #351 from DanTheMan827/optimistic-local-scan
Render local files in UI as scanned
2026-03-19 22:22:14 +02:00
edidealt
fc4adfcd32
Merge pull request #352 from DanTheMan827/minor-fixes
A collection of fixes
2026-03-19 22:21:53 +02:00
Daniel
7c5424437e feat(ffmpeg): add WAV format support and detection for use in dev mode
- Added WAV format to customFormats with appropriate metadata.
- Implemented detection for RIFF/WAVE format in detectAudioFormat function.
2026-03-19 15:14:52 -05:00
Daniel
895d5dd20f feat(metadata): replace taglib-wasm with @dantheman827/taglib-ts
- feat(taglib): updated audio buffer handling in metadata.js to use Uint8Array.
- feat(taglib): refactored addMetadataToAudio to support return type as Blob or Uint8Array

- feat(taglib): add timeout functionality to metadata functions
  - Introduced `withTimeout` utility function to handle operation timeouts.
  - Updated `addMetadataWithTagLib` to use `withTimeout` for promise resolution.
  - Updated `getMetadataWithTagLib` to use `withTimeout` for promise resolution.
  - Added default timeout parameter to both metadata functions.

- feat(taglib): improve metadata handling with ChunkedByteVectorStream
  - Enhanced metadata handling in taglib.ts and taglib.worker.ts to utilize ChunkedByteVectorStream.

- fix(taglib): handle metadata addition failure gracefully
  - Updated `addMetadataWithTagLib` to catch errors and return original audio data if metadata addition fails.

fix(downloads): return original blob if metadata addition fails
 - Wrap addMetadataToAudio call in try-catch to handle errors.

feat(taglib): add direct calling of taglib methods
  - Introduced `direct` parameter to `addMetadataWithTagLib` and `getMetadataWithTagLib` functions for direct processing in the current thread.
  - Exported taglib worker functions.
2026-03-19 15:14:52 -05:00
Daniel
98953b4572 feat(local-files): initialize localFilesCache and render local files in UI after each track is scanned 2026-03-19 15:13:13 -05:00
Daniel
cd64239ba1 refactor(downloads): add readableStreamIterator for easier stream handling
- Introduced `readableStreamIterator` to convert ReadableStream into async iterable.
- Updated `LosslessAPI` to utilize `readableStreamIterator` for handling response body.
- Modified `ZipNeutralinoWriter` to use `readableStreamIterator` for reading chunks.
2026-03-19 15:12:24 -05:00
Daniel
61aebf7994 refactor(metadata): move METADATA_STRINGS to separate file 2026-03-19 15:11:37 -05:00
Daniel
fd06160f7e refactor(doTimed): refactor error handling and skip timing when not in dev mode 2026-03-19 15:11:15 -05:00
Daniel
b7cac5724d fix(downloads): don't disable hi-res downloads on iOS or Safari
Just because the browser can't play them doesn't mean the user may not want to download them
2026-03-19 15:11:15 -05:00
Daniel
393491e2c8 refactor(platform-detection): add platform-detection.ts for browser and platform detection 2026-03-19 15:09:58 -05:00
Daniel
c315d2dfcd fix(downloads): update lossless quality labels 2026-03-19 15:09:58 -05:00
Daniel
2a4136a5f6 fix(downloads): progress index now shows correct track number in bulk download 2026-03-19 15:07:28 -05:00
edidealt
992974d790 fix image uploads 2026-03-19 18:58:15 +00:00
Nohan-V2
a18e865906 Fix settings persistence: ReplayGain Pre-Amp and Gapless Playback 2026-03-17 22:13:02 +01:00
edidealt
6b1619d2c3 more generas in the hot and new section 2026-03-17 20:40:55 +00:00
edideaur
e5b4cf6adf
Merge pull request #335 from Xenuel/feature/in-your-library
feat(ui): add "In Your Library" section to artist detail page
2026-03-17 11:00:11 +02:00
Samidy
971b5c94be Feat(Hot/New): Add R&B & Kids Genre Section 2026-03-17 06:04:27 +03:00
Samidy
07d78798cd feat(hot & new): metal genre 2026-03-17 04:36:49 +03:00
Xenuel
43f816ad25 refactor(ui): improve accessibility and security in "In Your Library" section
Replace h2 toggle with semantic button and aria-expanded attribute,
switch from style.display to hidden attribute for visibility control,
use DOM methods instead of innerHTML for source labels and modal
options to prevent XSS, improve artist matching with ID-based lookup,
and clean up event listeners before re-attaching to prevent leaks.
2026-03-16 23:46:25 +01:00
Xenuel
52d5166363 feat(ui): add "In Your Library" section to artist detail page
Show liked tracks and playlist tracks by the artist with source
labels, collapsible chevron toggle, and real-time updates via
favorites-changed and playlist-tracks-changed events.
2026-03-16 22:38:29 +01:00
Samidy
b7aaa37578 add new pinkhamster instance 2026-03-16 23:46:27 +03:00
edideaur
5c7776abb7 actually refresh instances on refresh... 2026-03-16 19:41:01 +00:00
edideaur
6e39cad73d fix (remove spotisaver blacklist) 2026-03-16 16:16:57 +00:00
itsmo-ks
6fcb9656ae Enhance Docker and environment variable handling for authentication features 2026-03-15 22:32:02 +00:00
itsmo-ks
abcc33ba38 Fix Clear Recently played 2026-03-15 14:00:44 +00:00
edideaur
7b70e55895
Merge pull request #326 from lsmda/feature/add-strict-album-match-toggle-on-playlist-creation
feat(playlists): add strict album match toggle on CSV tab import
2026-03-15 13:47:58 +02:00
Srihari NT
677f515e4d fix(ui): fullscreen volume above taskbar, settings overflow, download progress
- #322: Fullscreen overlay padding and main-view scrollable so volume stays above taskbar when Up next is shown

- #313: Settings tab content constrained on small displays with max-width, min-width, overflow-x

- #278: HEAD request before GET for download to get Content-Length for progress bar; resolveDownloadTotalBytes in downloadProgressUtils.js
2026-03-15 15:41:32 +05:30
lsmda
6b38809fd7 feat(playlists): add strict album matching toggle on playlist creation modal 2026-03-15 02:17:15 +00:00
itsmo-ks
c64065f913 Fixed Reset Local Data 2026-03-15 01:17:20 +00:00
Samidy
08652f78ec fix(playlist-imports): dont fucking push to liked 2026-03-14 03:32:11 +03:00
Samidy
99debbb7b2 feat(APIs): custom api instances 2026-03-14 02:58:22 +03:00
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