If you’re having some issues with SAMBL right now, I’m doing some experimenting with anubis /nginx in a docker container, so you might be having some issues
Dev Update!
Features I’m working on for the next SAMBL version
- Qobuz Provider
- Upgraded URL support
- All URLs are now an
ExternalUrlDataobject containing the URL’s info (provider, id, type), and the musicbrainz relation types, so they now seed properly
- All URLs are now an
- Reworked the footer
- Makes it easier to add links
- Removed ‘Please report any bugs or suggestions here’ text
- Added a donate link
- Added yambs as a seeder
- Only seeder that supports soundcloud
Network stack upgrades
- Switched to using nginx docker
- Added anubis
- For now, if you go through sambl.lioncat6.com, it bypasses anubis since cloudflare interferes with anubis’s detection
- Will probably change soon
- For now, if you go through sambl.lioncat6.com, it bypasses anubis since cloudflare interferes with anubis’s detection
Dev server
- You can now try out the current indev SAMBL version to hopefully help catch bugs before they make it into prod!
- You can try out the current dev version of SAMBL now at https://dev.sambl.lioncat6.com!
Moved the dev server to https://dev.sambl.lioncat6.com
SAMBL Version 2.3.7!
Changes
- Add Qobuz Provider
- ISRC Lookups are currently not functional
- Add the blue status to the filter
- URL Improvements
- All URLs contain musicbrainz type ids
- Adds support for specific url types per entity/provider
- Add yambs as a seeder
- Update Deep Search edit note
- Deep search improvements
- Updated Footer
- Removed redundant bug report message
- Added donation link (Running SAMBL isn’t free!)
- Bug Fixes
- URI encode edit urls Closes # not URL encoded when adding new artist to MB · Issue #133 · Lioncat6/SAMBL-React · GitHub
- Fix tidal issue Closes (tidal) Internal server error when looking up artist · Issue #130 · Lioncat6/SAMBL-React · GitHub
Schema Changes
- Update URLs
- Replace all URL strings with
ExternalUrlDataObjects
- Replace all URL strings with
// provider-types.ts
export type UrlType = 'album' | 'track' | 'artist';
export class UrlInfo extends UrlData {
provider: ProviderNamespace;
}
export class ExternalUrlData {
url: string;
urlInfo: UrlInfo | null;
mbTypes: number[]
}
Full Changelog: Comparing v2.3.6...v2.3.7 · Lioncat6/SAMBL-React · GitHub
Note: The dev server will redirect to the main server until there’s new features to test
SAMBL Version 2.3.8 Hotfix
- Resolve Bandcamp issues
- Album fetching is now functional again
- Search page artist matching is now functional again
- Improve track metadata extraction
- Resolve Track Menu url issues
Full Changelog: Comparing v2.3.7...v2.3.8 · Lioncat6/SAMBL-React · GitHub
SAMBL Dev Update
- Deep Seach rework
-
/api/artistDeepSearch/schema change:export class DeepSearchData { provider: ProviderNamespace mbArtists: DeepSearchArtist[] albums: AggregatedAlbum[] sourceArtist: ArtistObject } export class DeepSearchArtist extends PartialArtistObject { nameSimilarity: number occurrences: number | null mostCommonMBID: boolean }- Data is now always returned instead of a 404 error with a list of relevant albums and artists
mbArtistsis returned in rank of best match, calculated server side by first number of occurences in searched data and name matching
-
UI has been added to display results
- Options have been added, making deep search a bit more effective for certain artists (ie. Using track artists improves matching for artists that mostly feature on other’s albums)
- Artists get displayed in rank of best match, with artists with the most occurrences being ranked at the top, then sorted by name similarity. The pill to the left of the artist name displays the status and the name similarity
- A warning is displayed on the seed button for artists with low occurrences or name similarity
-
Dev server is back up for testing new features at https://dev.sambl.lioncat6.com
Note: Qobuz currently is only working on the dev server.
Dev Update!
Not too much has changed from last build but:
Available right now:
- Bunch of little bug fixes
- Some ground work for actually supporting URL lookup for deep searches
- Bump SAMBL to next.js latest!!!
- Been putting this off for a while for stability reasons, but it seems that it runs fine without any trouble, so this is the main thing I’m testing
Working on:
- Adding URL support to labels
- Adding region support to all(?) entities
- Or at least albums
As always, up for testing @ https://dev.sambl.lioncat6.com
Would like to do a bit of testing before pushing this to prod so please try it out!
Haven’t done too much for SAMBL lately since I’ve been working on some new harmony providers! (Qobuz, Naver VIBE)
Version 2.3.9
- Fix issues with deezer Closes #145 Closes #144
- Support multiple query parameters on the find page (For entities that resolve to a barcode but cannot be found using one) Closes #147
- Update bandcamp supported features Progresses #150
- Implement Qobuz’s new authentication requirements
- Qobuz works again!!
- Small Style changes
- Bump all packages
- SAMBL now uses nextjs@latest
- Deep Search revamp
- Add new UI
- Add support for searching by URL
Schema Changes
// types/provider-types.ts
export class AlbumObject extends ImageObject {
provider: ProviderNamespace;
id: string;
name: string;
url: ExternalUrlData;
albumArtists: PartialArtistObject[];
artistNames: string[];
releaseDate: string | null;
trackCount: number | null;
albumType: string | null;
upc: string | null;
albumTracks: TrackObject[];
labels: LabelObject[] | null;
copyrights: string[] | null;
genres: string[] | null;
type: "album";
};
export class LabelObject extends GenericObject {
}
export type UrlType = 'album' | 'track' | 'artist' | 'label';
export class ExtendedAlbumObject extends AlbumObject {
comment: string | null;
externalUrls: string[] | null;
hasImage: boolean;
albumArtists: ArtistObject[];
override albumTracks: ExtendedTrackObject[];
};
// types/api-types.ts
export class DeepSearchData {
provider: ProviderNamespace
mbArtists: DeepSearchArtist[]
albums: AggregatedAlbum[]
sourceArtist: ArtistObject
}
export class DeepSearchArtist extends PartialArtistObject {
nameSimilarity: number
occurrences: number | null
mostCommonMBID: boolean
}
What’s Changed
- Bump @tidal-music/api from 0.11.0 to 0.18.0 by @dependabot[bot] in Bump @tidal-music/api from 0.11.0 to 0.18.0 by dependabot[bot] · Pull Request #153 · Lioncat6/SAMBL-React · GitHub
- Bump typescript from 5.9.2 to 6.0.2 by @dependabot[bot] in Bump typescript from 5.9.2 to 6.0.2 by dependabot[bot] · Pull Request #140 · Lioncat6/SAMBL-React · GitHub
- Version 2.3.9 by @Lioncat6 in Version 2.3.9 by Lioncat6 · Pull Request #156 · Lioncat6/SAMBL-React · GitHub
Full Changelog: Comparing v2.3.8...v2.3.9 · Lioncat6/SAMBL-React · GitHub
@jesus2099 AI Shit in MB - #25 by jesus2099
Maybe we could put quotes around “artist”, or write so called artist?
I’ve been considering doing this lol
Bit off topic, but SAMBL is essentially harmony on an artist level
Bandcamp is currently not working on SAMBL, but a fix will be pushed out to the dev server in a few hours. Working on a small update and the full thing will likely be finished in a couple days.
Dev server is up!
Currently in testing:
- Bandcamp search fixes
- Soundcloud cover art tweaks
- Albums/sets lacking cover art will automatically inherit it from the first track
- ImageUrlSmall has been made slightly larger (~64px → 200px)
- Track duration display
- Clicking on the duration will copy the ms to clipboard (Hovering shows it in the tooltip)
- Tracks with no known duration default to
-:--
SAMBL 2.3.10
-
Fix issues with bandcamp Fix search page, add new search method, bump packages and bump to 1.5.4 · Lioncat6/bandcamp-scraper@ce476bc · GitHub
-
Soundcloud changes
-
Add duration to track menu
-
Rework regex quires so soundcloud lookups work right
Full Changelog: Comparing v2.3.9...v2.3.10 · Lioncat6/SAMBL-React · GitHub
Dev update
Short update this time, but a new relase is coming soon… been a little busy recently so I havent had much time to work on it but discogs support and improved qobuz support should be coming.
SAMBL Version 2.3.11
- Add Discogs support
- Tweak CSS on smaller screens #168
- Enable Harmony support for Qobuz
- Bugs: Closes #178 Closes #177 Closes #171 Closes #169 Closes #164 Closes #163
- Add labels and catalogue numbers to the album info footer
- Bump packages
- (MusicBrainz) Support genres and tags on albums
Read more here: Release Version 2.3.11 · Lioncat6/SAMBL-React · GitHub
Should be live in a few minutes :3
Also: Harmony has Qobuz support now!
SAMBL Version 2.3.12
- Adds new provider: Volumo
- Improve some error handling
- Add some new ai-generated music tags
- Fix issues with soundcloud’s URL matching
- Finally update the README
- Fix apple music and move the offending token to an environment variable so this can be fixed without a code change
- Improve Deezer’s error handling
- Bump packages
- Upgrade from middleware.js to proxy.js
Full Changelog: Comparing v2.3.11...v2.3.12 · Lioncat6/SAMBL-React · GitHub
SAMBL Dev Update:
Upcoming features:
- SAMBL Seeder
- Will only enabled for providers harmony does not support yet
- Soundcloud, Naver, MixCloud
- Mixcloud Provider
- Sets can be imported as DJ mix releases using the SAMBL seeder
- Track information is provided from segment timestamps embedded in Mixcloud set information
- Medium Support
- Breaking change for anybody using the API!
- albumTracks → mediums
-
class MediumObject { format?: "Digital Media" | "CD" | "Vinyl" | "Cassette" | null; name?: string | null; tracks: TrackObject[]; }
- AI Check tool
- Currently supported by the Tidal API (Deezer might be added soon, but will require some shenanigans)
- Lookups are done via ISRC & UPC, so the source platform must support them
- Currently supports whole albums or single tracks








